我正在编写一个名为ToPhoneFormat的扩展方法,它将一串数字格式化为电话号码。
是否可以在方法中添加一个参数,使我能够像这样调用它:MyPhoneString.ToPhoneFormat(国际代码)
那样,我可以写MyPhoneString.ToPhoneFormat(1);格式化美国电话号码和MyPhoneString.ToPhoneFormat(33)格式化法语电话号码。
我已经编写了执行格式化的方法,但我想知道如何构建构造函数,以便在调用它时使用参数。
感谢。
答案 0 :(得分:1)
是的,扩展方法可以带参数:
public static string ToPhoneFormat(this string str, int formatCode)
{
return ...
}
// ...
string s = "1234567890".ToPhoneFormat(33);
答案 1 :(得分:1)
美好而轻松:)
我假设您的ToPhoneFormat方法签名类似于:
public static string ToPhoneFormat(this string sourceString)
{
/* Your code here */
}
如果是这样,您需要做的就是在this
参数之后添加一个参数,因此它变为:
public static string ToPhoneFormat(this string sourceString, int countryCode)
{
/* Your code here */
}
答案 2 :(得分:1)
不确定。您只需在扩展方法的签名中添加参数:
public static string ToPhoneFormat(this string phoneNumber, int countryCode)
{
// do your formatting here
}