您好,我正在网上商店进行asp.net贴标,并且遇到了一个奇怪的错误问题,in the Find命令,Visual Studio无法找到该命令我需要做什么?,我正在使用Visual Studio 2010,因为该代码正在尝试实现是在Visual Studio 2010中完成的
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace Webshop.Models
{
public class ProductTypeModel
{
public string InsertProductType(ProductType productType)
{
try
{
webshopEntities db = new webshopEntities();
db.ProductTypes.AddObject(productType);
db.SaveChanges();
return productType.Name + "was succesfully inserted";
}
catch (Exception e)
{
return "Error:" + e;
}
}
public string UpdateProductType(int id, ProductType productType)
{
try
{
webshopEntities db = new webshopEntities();
// Merret objekti nga db
ProductType p = db.ProductTypes.Find(id);
p.Name = productType.Name;
db.SaveChanges();
return productType.Name + "was succesfully updated";
}
catch (Exception e)
{
return "Error:" + e;
}
}
public string DeleteProductType(int id)
{
try
{
webshopEntities db = new webshopEntities();
ProductType productType = db.ProductTypes.Find(id);
db.ProductTypes.Attach(productType);
db.ProductTypes.DeleteObject(productType);
db.SaveChanges();
return productType.Name + "was succesfully deleted";
}
catch (Exception e)
{
return "Error:" + e;
}
}
}
}
答案 0 :(得分:0)
从错误中我可以看到您使用ObjectSet<TEntity>
,它没有documentation中所见的Find()
方法。如果要使用Find()
方法,则首先需要将ObjectSet强制转换为List,例如:db.ProductTypes.ToList()
,要使用此方法,必须具有using System.Linq
。>