Linq-to-SQL,具有表值UDF用户定义的函数

时间:2010-06-26 17:39:36

标签: linq-to-sql user-defined-functions

我是Linq的新手,并尝试了解如何将下拉列表绑定到SQL用户定义的函数。

            //Populate the Pledge dropdown
        var db = new App_Data.MyDBDataContext();
        int? partnerID = Convert.ToInt32(Request.QueryString["PartnerID"]);

        var pledges =
            from p in db.ufn_AvailablePledgesByPartner(partnerID)
            select new
            {
                PledgeAndPartnerName = p.PledgeAndPartnerName,
                PledgeID = p.PledgeID
            };

        DropDownList ddlPledgeID = (DropDownList)DetailsViewContribution.FindControl("DropDownListPledgeID");
        ddlPledgeID.DataSource = pledges;
        ddlPledgeID.DataTextField = pledges.PledgeAndPartnerName;
        ddlPledgeID.DataValueField = pledges.PledgeID;

当前的问题是我试图引用匿名类的属性的最后两行。 “'System.Linq.IQueryable'不包含'PledgeAndPartnerName'的定义,也没有扩展方法...”我天真地认为编译器应该弄清楚这一点,但显然我认为C#现在比它更具动态性真的是。

感谢您的任何意见。

1 个答案:

答案 0 :(得分:0)

试试这个:

ddlPledgeID.DataTextField = "PledgeAndPartnerName";
ddlPledgeID.DataValueField = "PledgeID";