我在我的某台开发机器中遇到此错误。在指向同一数据库的其他计算机中不会发生此错误。肯定两个服务器都不相同。我不知道一台服务器中缺少的软件会导致此问题。两台机器都运行相同的OS 2008 R2。
using (MYDB.MyDB oDB = new MYDB.MyDB())
{
var query = from t in oDB.Products
where (_ProductId.HasValue?_ProductId==t.Productid:true)
select new Product()
{
ProductId = t.Productid,
ManufacturerId = t.Manufacturerid,
ManufacturingNumber = t.Manufacturingnumber,
CustomProduct = t.Iscustomproduct ? "Yes" : "No",
IsCustomProduct = t.Iscustomproduct,
SubCategoryName = t.Subcategory.Subcategoryname
};
return query.ToList();
}
非常感谢任何帮助
谢谢, Senthilkumar
答案 0 :(得分:1)
我无法在类似的情况下重现异常,但_ProductId.HasValue?_ProductId==t.Productid:true
部分看起来很可疑。我会改变它如下,如果你很幸运它也解决了你的问题,否则它无论如何都是一个改进:
var query = from t in oDB.Products;
if (_productId.HasValue)
{
query = query.Where(t => t.Productid == _productId.Value);
}
query = query.Select(t => new Product() {...
另一个原因可能是Product.ProductId
不是可以为空的。