我有2個類庫(C#),說A和B。擴展系統名稱空間並將其用作不同的.dll參考
庫A
有一些方法在裏面。這些方法需要一個擴展方法來對它們的值進行加密/解密。
圖書館B
完成這項工作。這個庫有一個擴展方法,但在System
命名空間中擴展它。
namespace System
{
public static class EncryptDecrypt
{
public static string ToEncrypt(this Object toEncrypt)
{
}
public static string ToDecrypt(this string toDecrypt)
{
}
}
}
我之所以有它的System
命名空間是使用這個擴展在所有的應用程序,而無需在using
部分進口。
請注意
圖書館B
將始終作爲.dll
參考,因爲它有密碼的私人密鑰(私鑰)/解密。 因此,無論我在哪裏使用這個庫;我會有一個公鑰來加密事物。
我已經安裝了它,當我嘗試它;無論我在哪裏使用它,它都會給我編譯時間錯誤。
所以如果我使用它在一個字符串item.Member_FirstName.ToEncrypt()
「串」不包含「ToEncrypt」的定義,並沒有 擴展方法「ToEncrypt」接受 型「串」的第一個參數可以找到(是否缺少using指令或程序 集引用?)
但是,當我去的這些擴展方法的定義。這些事情在圖書館** B
他們的正確定義。**
我懷疑有與圖書館衝突A's
系統命名空間和B's
系統命名空間?
請糾正我。
'使用EncryptDecrypt' –
@LeiYang,實際上不需要這樣做,因爲命名空間是'System'。我在某處指出了這個問題。 – Manoj
系統是爲Microsoft Net Library保留的。您無權將項目添加到此庫。所以你應該讓任何自定義庫使用你自己的根名稱空間。 – jdweng