簡體   English   中英

使用實體框架從數據庫中檢索數據

[英]Retrieving data from database using Entity Framework

我是實體框架的初學者。 我正在構建一個WPF應用程序。 以下是我的模型課:

[Table("Vehicle")]
    public class Vehicle
    {
        [Key]
        public int VehicleId { get; set; }
        [Column("LicencePlateNumber", TypeName = "ntext")]
        [MaxLength(100)]
        public string LicencePlateNumber { get; set; }
        [Column("LicencePlateState", TypeName = "ntext")]
        [MaxLength(100)]
        public string LicencePlateState { get; set; }
        [Column("Make", TypeName = "ntext")]
        [MaxLength(100)]
        public string Make { get; set; }
        [Column("Other", TypeName = "ntext")]
        [MaxLength(100)]
        public string Other { get; set; }
        [Column("Model", TypeName = "ntext")]
        [MaxLength(100)]
        public string Model { get; set; }
        [Column("Style", TypeName = "ntext")]
        [MaxLength(100)]
        public string Style { get; set; }
        [Column("Color", TypeName = "ntext")]
        [MaxLength(100)]
        public string Color { get; set; }
        [Column("PurchaseYear", TypeName = "int")]
        public int PurchaseYear { get; set; }
        [Column("InsurnaceCompanyName", TypeName = "ntext")]
        [MaxLength(100)]
        public string InsurnaceCompanyName { get; set; }
        [Column("InsurnaceCompanyNumber", TypeName = "ntext")]
        [MaxLength(100)]
        public string InsurnaceCompanyNumber { get; set; }
    }

我正在嘗試從datagrid中的此表中檢索數據。

 using (var context = new TransportContext())
 {                
       var vehicleList = from v in context.Vehicles
                         select new
                         {
                              Number = v.LicencePlateNumber,
                              Make = v.Make,
                              Model = v.Model,
                              Year = v.PurchaseYear
                         };
                    DG_Details.ItemsSource = vehicleList;
                    DG_Details.Items.Refresh();
   }

但是我得到一個XAMLParseException 另一方面,如果我嘗試此操作,它將起作用:

 using (var context = new TransportContext())
 {              
       var projectionQuery = from v in context.Vehicles
                                  select v;
            var vehicleList = projectionQuery.ToList<Vehicle>();
                    DG_Details.ItemsSource = vehicleList;
                    DG_Details.Items.Refresh();
   }

但是我只想檢索4列,而不是全部。 需要幫忙!!

嘗試這個 :

var vehicleList = (from v in context.Vehicles
                         select new
                         {
                              Number = v.LicencePlateNumber,
                              Make = v.Make,
                              Model = v.Model,
                              Year = v.PurchaseYear
                         }).ToList();
                    DG_Details.ItemsSource = vehicleList;
                    DG_Details.Items.Refresh();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM