0

我有一些从字符串构造自身的类,如下所示:

CurrencyVector v = new CurrencyVector("10 WMR / 20 WMZ");

它实际上是一个包含多种货币值的类,但这并不重要。

我需要将 LINQ 表(在 vs 2010 设计器中)中的列类型从 String 更改为该类 CurrencyVector。

如果我这样做 - 当 LINQ 运行时尝试将 String 转换为 CurrencyVector 时(从数据库填充表时),我得到运行时错误。添加 IConvertible 没有帮助。

我将这些列包装在属性中,但它是丑陋且缓慢的解决方案。搜索互联网没有结果。

4

1 回答 1

0

您始终可以扩展该类并创建另一个返回该对象的属性。像这样(伪代码)

public partial class MyLinqEntity {
   public CurrencyVector  CurrencyVector {
       get {
          return new CurrencyVector(this.ColumnHoldingCurrencyVector);
       }
   }

}

其中 CurrencyVector 具有在构造函数中转换字符串的逻辑。

于 2010-05-17T00:23:50.243 回答