2011-01-18 6 views
0

ToPhoneFormatと呼ばれる電話番号に数字列をフォーマットする拡張メソッドを書いています。拡張メソッド国番号をパラメータとする電話形式

このようにそれを呼び出すために私を可能にする方法にパラメータを追加することが可能です:MyPhoneString.ToPhoneFormat(国際コード)

そのように、私はMyPhoneString.ToPhoneFormat(1)を書くことができます。米国の電話番号をフォーマットし、MyPhoneString.ToPhoneFormat(33)を使用してフランス語の電話番号をフォーマットします。

私は既に書式設定を行うメソッドを書いていますが、私はそれを呼び出すときにパラメータで動作するようにコンストラクタを構築する方法を知っています。

ありがとうございました。

答えて

1

いいと簡単に:)

私はToPhoneFormatのためのあなたのメソッドのシグネチャは次のようになりますと仮定していますあなたがする必要があるのは、thisパラメータの後にパラメータを追加することです。したがって、それは次のようになります:

public static string ToPhoneFormat(this string sourceString, int countryCode) 
{ 
    /* Your code here */ 
} 
+0

ThisFormat = sourceStringe.Format( "{0:### - ### - ####}")。動作しません。このラインで何が問題なのですか? – frenchie

+0

@frenchie:新しい質問を作成します。 1行のコメントよりも、文字列の例と望みの結果を提供する方が簡単です。 –

1

はい、拡張メソッドは、パラメータを取ることができます。その場合

public static string ToPhoneFormat(this string sourceString) 
{ 
    /* Your code here */ 
} 

public static string ToPhoneFormat(this string str, int formatCode) 
{ 
    return ... 
} 

// ... 

string s = "1234567890".ToPhoneFormat(33); 
1

です。あなただけの拡張メソッドのシグネチャでパラメータを追加することができる:

public static string ToPhoneFormat(this string phoneNumber, int countryCode) 
{ 
    // do your formatting here 
} 
関連する問題