2016-06-08 52 views
0

我的问题是,当我尝试调试我的程序,我得到错误“属性或索引‘GetServiceCafe.EntityCafe.hasil’不能在这种情况下,因为get访问无法访问使用”'GetServiceCafe.EntityCafe.hasil.get'访问器的可访问性必须比属性或索引器更具限制性吗?

我试图与修复它这accessor must be more restrictive than the property or indexer但在我的情况下,主要问题是get未设置,我试图将get更改为公共,但仍然得到此错误。

EntityCafe.cs:

namespace GetServiceCafe 
{ 
    class EntityCafe 
    { 
     List<EntityData> hasil { get; set; } 
    } 

    public class EntityData 
    { 
     public int ID_Transaksi { get; set; } 
     public string Nama_Pemesan { get; set; } 
     public int Status { get; set; } 
     public string Detail_Pesanan { get; set; } 
     public int Total_Biaya { get; set; } 
     public string Jenis_Transaksi { get; set; } 
     public string Cabang { get; set; } 
    } 
} 

Form1.cs中:

DataTable table = new DataTable("myTable"); 
table.Columns.Add("ID_Transaksi", typeof(string)); 
table.Columns.Add("Nama Pemesan", typeof(string)); 
table.Columns.Add("Detail Pesanan", typeof(string)); 
table.Columns.Add("Total_Biaya", typeof(string)); 
table.Columns.Add("Jenis_Transaksi", typeof(string)); 
table.Columns.Add("Cabang", typeof(string)); 

foreach (var obj in dataPengiriman.hasil) 
{ 
    DataRow row = table.NewRow();//empty row 
    row[0] = obj.id_transaksi.ToString(); 
    row[1] = obj.nama_pemesan.ToString(); 
    row[2] = obj.detail_pesanan.ToString(); 
    row[3] = obj.total_biaya.ToString(); 
    row[4] = obj.jenis_transaksi.ToString(); 
    row[5] = obj.cabang.ToString(); 
    table.Rows.Add(row); 
} 

回答

0

列表是不可访问,因为它不是public,可以使得到public

public class EntityCafe 
{ 
    public List<EntityData> hasil { get; private set; } // it should be Hasil 
} 

注如果要创建实例,则该类也必须是public从形式。

+0

明白了,非常感谢。 – liantokate