有沒有在Linq to SQL返回的實體中使用自定義數據類型的方法?在Linq to SQL中使用自定義數據類型
說我有這樣的數據類型:
public struct CustomerNumber : IEquatable<string>
{
private string _value;
public static implicit operator CustomerNumber(string value)
{
return new CustomerNumber { _value = value };
}
...
}
它還定義了運營商== =等等!
當我嘗試替換返回實體中的某個屬性時,即使您可以從字符串中指定CustomerNumber,也會收到異常Invalid cast from 'System.String' to 'CustomerNumber'
。
這不可能或者我做錯了什麼?
編輯 - 澄清:
的CustomerNumber
用作上得到由LINQ到SQL生成的實體的數據類型。嘗試查詢數據庫時發生異常。這不是我想要投射的東西,它在LinqToSQL魔術裏的某個地方出現了問題。
我的代碼看起來是這樣的:
var customers = DataContext.Customers;
編輯:
事實證明,如果你的結構實現它的工作原理或者說一個明確的運營商,它的工作與實現一個明確的一個結構運算符將字符串轉換爲類型,但不是從System.Int32轉換爲類型。
再次編輯:它仍然不起作用。
您能向我們展示創建CustomerNumber的代碼並嘗試更改屬性嗎? – 2010-07-06 11:25:11
通過澄清更新了我的問題。 – 2010-07-06 11:45:40