1

エラーメッセージ:

ID 'FormProprietari' を持つ GridView のデータ ソースには、列を生成するためのプロパティまたは属性がありませんでした。データ ソースにコンテンツがあることを確認します。

私はASP.NETアプリケーションを持っており、ネット上でそれが可能であると言えるオブジェクトGridViewにaをバインドしようとしています。List<T>

これは私のGridViewです:

<asp:GridView ID="FormProprietari" runat="server">
        <Columns>
            <asp:TemplateField >
                 <ItemTemplate> 
                    <%#((Lab_TAP_web.Proprietar)Container.DataItem).NumeProprietar%> 
                 </ItemTemplate>
            </asp:TemplateField>

            <asp:TemplateField >
                 <ItemTemplate> 
                    <%#((Lab_TAP_web.Proprietar)Container.DataItem).PrenumeProprietar%> 
                 </ItemTemplate>
            </asp:TemplateField>

            <asp:TemplateField >
                 <ItemTemplate> 
                    <%#((Lab_TAP_web.Proprietar)Container.DataItem).ProprietarID%> 
                 </ItemTemplate>
            </asp:TemplateField>
        </Columns>

    </asp:GridView>

そして、これは、Proprietar定義したクラスの新しいオブジェクトをデータベースに追加し、それを表示するためにグリッドビューを再バインドする関数です。最初はデータベースが空であり、グリッドビューも表示されないことに注意してください。上。

protected void Button2_Click(object sender, EventArgs e)
        {
            var Nume = TBNumeProprietar.Text;
            var Prenume = TBPreNumeProprietar.Text;

            MyCars db = DBSilo.db;

            Proprietar newOwner = new Proprietar();
            newOwner.NumeProprietar = Nume;
            newOwner.PrenumeProprietar = Prenume;
            newOwner.ProprietarID = (db.Proprietari.Count() + 1);
            //newOwner.ProprietarID = 1;



            db.Proprietari.InsertOnSubmit(newOwner);
            db.SubmitChanges();

            try
            {
                FormProprietari.DataSource = db.Proprietari.ToList();
            }
            catch (Exception)
            {

                throw;
            }
            FormProprietari.DataBind();           
        }

問題は、ブレークポイントのあるデータ ソースをチェックしList<Proprietar>、リストに常にProprietarオブジェクトが含まれていることです。

誰かが私が間違ったことを知っていますか?

4

1 に答える 1

1

コメントから回答に移動しました。

Proprietarこのようなクラスの各プロパティにゲッターとセッターがあることを確認してください-

public class Proprietar
{
    public string NumeProprietar { get; set; }
    public string PrenumeProprietar { get; set; }
    public int ProprietarID { get; set; }
}
于 2013-05-12T02:47:43.837 に答える