0
データベースからデータを取得するためのクラスと、Webフォームをグリッドビューに表示するクラスがあります。ここに私のクラスには、次のとおりです。オブジェクトリストにnull値を設定する
public class Personel
{
dincerelektrnik_AracTakipEntities entity = new dincerelektrnik_AracTakipEntities();
public Personel(int DriverId, string DriverName, string DriverSurname, string DriverPosition,
bool DriverGender, string DriverImage, string DriverEmail,string Password,
DateTime? DriverBirthDate)
{
this.DriverId = driverId;
this.DriverName = driverName;
this.DriverSurname = driverSurname;
this.DriverPosition = driverPosition;
this.Gender = gender;
this.DriverImage = driverImage;
this.DriverEmail = driverEmail;
this.Password = password;
this.BirthDate = birthDate;
}
private int driverId;
public int DriverId
{
get { return driverId; }
set { driverId = value; }
}
private string driverName;
public string DriverName
{
get { return driverName; }
set { driverName = value; }
}
private string driverSurname;
public string DriverSurname
{
get { return driverSurname; }
set { driverSurname = value; }
}
private string password;
public string Password
{
get { return password; }
set { password = value; }
}
private DateTime? birthDate;
public DateTime? BirthDate
{
get {
if (birthDate.HasValue)
return birthDate;
else
return DateTime.Now.Date;
}
set { birthDate = value; }
}
private string driverPosition;
public string DriverPosition
{
get { return driverPosition; }
set { driverPosition = value; }
}
private bool gender;
public bool Gender
{
get { return gender; }
set { gender = value; }
}
private string driverImage;
public string DriverImage
{
get { return driverImage; }
set { driverImage = value; }
}
private string driverEmail;
public string DriverEmail
{
get { return driverEmail; }
set { driverEmail = value; }
}
public List<Personel> GetAllDrivers()
{
List<Personel> personeller = new List<Personel>();
var drivers = entity.prGetDrivers();
foreach (var driver in drivers)
{
personeller.Add(new Personel(driver.DriverId, driver.DriverName, driver.DriverSurname,
driver.DriverPosition, driver.DriverGender, driver.DriverImage, driver.DriverEmail,
driver.Password, driver.DriverBirthDate));
}
return personeller;
}
}
そして、私のGridView:
<asp:GridView ID="GridViewPersoneller" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:TemplateField HeaderText="Ad/Soyad">
<ItemTemplate>
<%#Eval("DriverName") %> <%#Eval("DriverSurname") %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<%#Eval("DriverEmail") %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<%#Eval("DriverBirthDate") %>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
そして、Webフォームの分離コード:
Personel personel = new Personel(1, "deneme", "deneme", "deneme", true, "deneme", "deneme", "deneme", DateTime.Now.Date);
protected void Page_Load(object sender, EventArgs e)
{
FillPeronselGridView();
}
protected void FillPeronselGridView()
{
List<Personel> personelList = personel.GetAllDrivers();
GridViewPersoneller.DataSource = personelList;
}
私は、コードを実行すると、私は何も見えません。エラーでもグリッドビューでもありません。私はデバッグするとき、私は私のストアドプロシージャですべてのデータを取得し、問題なく 'ドライバ'変数に格納することがわかりますが、オブジェクトリストに追加すると、null値が追加されます。なぜこれが起こっているのですか?これをどのように解決できますか?あなたの時間とサポートに感謝します。
「戻る人物」の「人物」には戻り値が含まれていますか? –
2行(データベーステーブルと同じ行番号)が含まれていますが、両方の行にはNULL値のみが含まれています。すべての属性にnull値が含まれていることを意味します。 @GuruprasadRao –