【发布时间】:2016-05-23 02:12:57
【问题描述】:
我收到一个错误
类型异常 'Microsoft.CSharp.RuntimeBinder.RuntimeBinderException' 发生在 System.Core.dll 但未在用户代码中处理 附加 信息:“object”不包含“CategoryId”的定义
下面是我的代码
dynamic product = (from prod in EntityInitializer.inventoryContext.Products
join sCat in EntityInitializer.inventoryContext.SubCategories on prod.SubCatID equals sCat.SubCategoryId
join vat in EntityInitializer.inventoryContext.VATs on prod.VatID equals vat.VatId
where prod.ProdID == proid && !prod.IsDelete
select new
{
ProductId = prod.ProdID,
CategoryId = sCat.CategoryId,
SubCategoryID = prod.SubCatID,
ProdName = prod.ProdName,
Make = prod.Make,
Finish = prod.ProdFinish,
Price = prod.Price,
Vatid=prod.VatID,
VatValue=vat.VatValue,
Unit = prod.ProdUnit,
Width = prod.ProdWidth,
Depth = prod.ProdDepth,
Height = prod.ProdHeight,
Inch = prod.ProdInch,
ImageURL = prod.ProdImage
}).FirstOrDefault();
我想从 product 中检索 CategoryId 并且产品包含所有记录,您可以在下面的附图中轻松找到这些记录。
【问题讨论】:
-
您确定要输入
prod.CategoryId吗?否则你将不得不解释“sCat”应该是什么意思。 -
@HansPassant 请参考,以便理解。
-
@HansPassant "sCat " 是 "SubCategory" 的别名
-
因此,当您单步执行项目时,您会看到
product.CategoryId的值为 10,如图所示,但是当您点击使用product.CategoryId的代码行时,您会遇到异常吗?您还应该在问题中包含引发异常的代码。 -
@Clint 请参考此链接i.stack.imgur.com/ra0rL.png
标签: c#