II 有一个项目 - AdventureWorks 和一个文件 - Product.cs,其中包含以下代码:
public static List<ProductCategory> GetCategories()
{
var db = new AdventureWorksEntities();
var data = from o in db.ProductCategories orderby o.Name select o;
return data.ToList();
}
EntityException was unhandled by user code
遇到以下代码行时抛出异常
return data.ToList();
所以,我使用try
andcatch
来捕获异常并使用Console.WriteLine
来查看异常是什么,它会给我
A first chance exception of type 'System.Data.EntityException' occurred in System.Data.Entity.dll
并且列表框将为空。
在 Default.aspx.cs 文件中,它包含:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
List<ProductCategory> data = DataAccessLayer.Products.GetCategories();
lbCategories.DataSource = data;
lbCategories.DataBind();
}
else
{
if (lbCategories.SelectedIndex != -1)
{
string category = lbCategories.SelectedValue;
Response.Redirect("/Products.aspx?id=" + category);
}
}
}
它似乎会从 DataAccessLayer 中检索某种形式的数据/信息。
以下是 Web.config 文件的摘录:
<connectionStrings>
<add name="AdventureWorksEntities" connectionString="metadata=res://*/mdlAdventureWorks.csdl|res://*/mdlAdventureWorks.ssdl|res://*/mdlAdventureWorks.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.\sqlexpress;Initial Catalog=AdventureWorksLT2008R2;Integrated Security=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
</connectionStrings>
下面展示了部分项目结构:
+ 数据访问层 - 产品.cs + 风格 - 网站.css + 默认.aspx - 默认.aspx.cs - Default.aspx.designer.cs + mdlAdventureWorks.edmx - mdlAdventureWorks.Designer.cs
我怀疑它可能与 mdlAdventureWorks.edmx 文件有关,但我不知道如何进一步解决和诊断问题,因为该项目不是我编写的。
感谢提供的任何建议。