无法加载类型'edmnearclass . productrerepository . destagliap &
本文关键字:edmnearclass productrerepository destagliap 加载 类型 | 更新日期: 2023-09-27 18:17:06
我有两个项目的解决方案:一个webApplication和一个ClassLibrary与edmx和所有实体框架逻辑。这工作得很好,但如果我尝试使用强类型数据,就会开始出现问题。
我使用这个函数:using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.ModelBinding;
using System.Web.UI;
using System.Web.UI.WebControls;
using EDMNearClass;
namespace WebSite
{
public partial class dettaglio_prodotto : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//Response.Write(Page.RouteData.Values["DESCRIZIONE"]);
}
public IQueryable<ProductRepository.DesTagliaP> GetProduct_Taglie([RouteData("Id")] string itemId)
{
decimal ProdId = decimal.TryParse(itemId, out ProdId) ? ProdId : 0;
ProductRepository pr = new ProductRepository();
var myEnts = pr.taglieProdottiDesGetbyUId(1,ProdId).AsQueryable();
return myEnts;
}
}
}
在aspx部分我使用这个代码:
<asp:Repeater ID="rpTaglie" runat="server" ItemType="EDMNearClass.ProductRepository.DesTagliaP" SelectMethod="GetProduct_Taglie">
<ItemTemplate>
<div class="quanitybox">
<label for="qty"><%# Item.Codice %></label>
<asp:TextBox runat="server" ID="quantita" CssClass="input-text qty" />
</div>
</ItemTemplate>
</asp:Repeater>
智能感知工作并帮助我选择EDMNearClass.ProductRepository.DesTagliaP
的属性,但在运行时我收到错误。如果我使用Eavl("Codice")
并删除ItemType="EDMNearClass.ProductRepository.DesTagliaP"
,则所有工作都很好。
我检查了/bin文件夹和EDMNearClass.dll。PDB存在并更新。
我该如何解决这个问题?
只是猜测-但我可以想象中继器绑定不喜欢IQueryable。我会绑定到IEnumerable或List。下面的工作-不确切只是给你一个想法。
public List<ProductRepository.DesTagliaP> GetProduct_Taglie([RouteData("Id")] string itemId)
{
decimal ProdId = decimal.TryParse(itemId, out ProdId) ? ProdId : 0;
ProductRepository pr = new ProductRepository();
var myEnts = pr.taglieProdottiDesGetbyUId(1,ProdId).ToList();
return myEnts;
}
编辑
我还会尝试将重复器显式绑定到集合,而不是使用select方法属性。请看这个答案
使用ItemType强类型重复器控制?