Joh*_*soe 2 asp.net data-binding iis gridview entity-framework
我看到类似的问题已被提出,但我认为它们中没有一个专门解决我所看到的环境差异.我有一个包含a的ASP.NET Web窗体应用程序,GridView
我手动绑定到实体框架实体的集合.我正在使用一个BoundField
引用我的某个实体的导航属性.
以前的帖子表明这不受支持,但整个解决方案在Windows 7上运行的IIS 7.5中运行良好.但是,当应用程序部署到在Windows Server 2003 R2上运行IIS 6的Web服务器时,它会失败并显示HttpException
:
"在所选数据源上找不到名为'Worker.FullName'的字段或属性."
以下是代码的相关摘要:
实体:
public class WorkerAssignment
{
public Guid Id { get; set; }
public Guid WorkerId { get; set; }
public virtual Worker Worker { get; set; }
}
public class Worker
{
public Guid Id { get; set; }
public string FullName { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
ASPX:
<asp:GridView
ID="gvWorkers"
runat="server"
AutoGenerateColumns="False"
DataKeyNames="Id"
>
<Columns>
<asp:BoundField
DataField="Worker.FullName"
SortExpression="Worker.FullName"
HeaderText="Worker Name"
/>
</Columns>
</asp:GridView>
Run Code Online (Sandbox Code Playgroud)
两台服务器都运行.NET Framework 4.0.30319.IIS 7.5和IIS 6之间的区别是什么导致代码在前一环境中正常运行而后者失败?
小智 10
我也面临同样的问题.类似的代码DataField="Worker.FullName"
工作正常,但突然开始在DEV上抛出错误,但没有localhost
.我无法指出确切的问题.
唯一的解决办法解决我的问题是,以取代asp:BoundField
以asp:TemplateField
用<%# Eval("Worker.FullName")%>
归档时间: |
|
查看次数: |
5774 次 |
最近记录: |