我试图做实体之间的关系使用ADO。使用“新”关键字
public class Banner
{
public int IdBanner { get; set; }
public string NameBanner { get; set; }
public string Media { get; set; }
public Country Country{ get; set; }
}
public class Country
{
public int IdCountry { get; set; }
public string NameCountry { get; set; }
}
在我的另一个类(DAL),我有一个方法,这方法我需要插入国家类中的属性,如我为例:
public List<Banner> Listar()
{
List<Banner> lista = new List<Banner>();
using (SqlConnection conn = ConnectionDAL.GetConnection())
{
String sql = "BannerListar";
using (SqlCommand command = new SqlCommand(sql, conn))
{
command.CommandType = CommandType.StoredProcedure;
try
{
conn.Open();
SqlDataReader dr = command.ExecuteReader();
while (dr.Read())
{
Banner obj = new Banner();
if (dr["IdBanner"] != DBNull.Value)
obj.IdBanner = Convert.ToInt32(dr["IdBanner"]);
if (dr["NameBanner"] != DBNull.Value)
obj.NameBanner = dr["NameBanner"].ToString();
if (dr["Media"] != DBNull.Value)
obj.Media = dr["Media"].ToString();
//HERE the problem
if (dr["NameCountry"] != DBNull.Value)
obj.Country.NameCountry = dr["NameCountry"].ToString();
lista.Add(obj);
}
}
catch
{
throw;
}
finally
{
conn.Close();
conn.Dispose();
}
return lista;
}
}
}
当我做这个节目来我是这样的错误:“使用'新'关键字来创建一个对象实例” 我该如何解决它?
你在哪一行得到错误? – Adil
Here: if(dr [“NameCountry”]!= DBNull.Value) obj.Country.NameCountry = dr [“NameCountry”]。ToString(); – user1887732
发生错误时。错误主要是因为您正在尝试创建某个类的实例而没有新的关键字。 – Dnyanesh