停止Implicit Typecast

时间:2010-03-31 13:39:36

标签: c# casting

我的问题是在C#控制台应用程序的AMO中。我有一个DataSourceView,其表有一个Decimal类型的列。

当我尝试从中创建一个度量时,AMO表示它无法创建度量,因为数据类型是字符串。

我相信可能会在背景中发生一些隐式类型转换,导致这种情况发生。

是否有应用程序范围的设置来阻止类型转换?

2 个答案:

答案 0 :(得分:0)

听起来你需要解析十进制的字符串 - decimal.Parse(s);

当然,您需要确保处理字符串不是十进制数的情况。

或者,您可以使用System.Convert

答案 1 :(得分:0)

我认为这取决于所使用的DataSourceView的实施情况。

DataSourceView获取数据源,但可以对该数据进行任何类型的转换。 ExecuteSelect()来电的结果只是一个Enumerable - 无法保证您在类型保真度方面得到的结果;它完全取决于实施。