无法加载类型'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存在并更新。

我该如何解决这个问题?

无法加载类型'edmnearclass . productrerepository . destagliap &

只是猜测-但我可以想象中继器绑定不喜欢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强类型重复器控制?