2009-03-21 19 views
0

CommonFunctionsプロジェクトにStringUtilities.csファイルがあり、これは文字列の最初の単語を大文字にするUppercaseFirst関数を保持しています。現在、このソリューションを使用している別のプロジェクト(同じソリューション内)の.aspx.csには、MyProject.CommonFunctions.StringUtilities.UppercaseFirst( "hello world")を使用して呼び出されます。カスタム関数のネームスペースを最小化する

これを短縮することはできますか?UppercaseFirst( "hello world");?可読性ははるかに優れています。 CommonFunctionsプロジェクトで

StringUtilities.cs:

namespace MyProject.CommonFunctions 
{ 
    public class StringUtilities 
    { 
     public static string UppercaseFirst(string s) 
     {//blah code} 
    } 
} 

Default.aspx.cs

using MyProject.CommonFunctions; 
... 
protected void Page_Load(object sender, EventArgs e) 
{ 
    MyProject.CommonFunctions.StringUtilities.UppercaseFirst("hello world"); 
} 

答えて

2

あなただけのメソッド名にすべての方法ダウンそれをカットしますが、ことを考えることはできません

StringUtilities.UppercaseFirst("hello world"); 
2

ないで:あなたはすでにあなたはそれを短縮することができ、代わりにusing MyProject.CommonFunction;ラインを持っていますC#; VB.NET(およびC++/CLI)には異なるルックアップ規則があります。あなたは関係なく、外側の名前空間の

protected void Page_Load(object sender, EventArgs e) 
{ 
    StrUtil.UppercaseFirst("hello world"); 
} 

を書き込むことができるようになる

using StrUtil = MyProject.CommonFunctions.StringUtilities; 

を次のようにC#ので

、あなたはusingエイリアスを使用することができます。

3

あなたが#3.0(.NET 3.5)は、C使用している場合は、拡張メソッドを使用することができます。

namespace MyProject.CommonFunctions 
{ 
    public static class StringUtilities 
    { 
     public static string UppercaseFirst(this string s) 
     {//blah code} 
    } 
} 

あなたは適切なファイルにあなたのusingsを設定したら、あなたが行くことができます:

using MyProject.CommonFunctions; 
... 
protected void Page_Load(object sender, EventArgs e) 
{ 
    "hello world".UppercaseFirst(); 
} 
関連する問題