public class tblProduct { public int ProductID { get; set; } public static string ProductID { get { return "tblProduct.ProductID"; } } public string ProductName { get; set; } public static string ProductName { get { return "tblProduct.ProductName"; } } }
[最优解释]
tblProduct p = GetAProduct() ?? new tblProduct() { ProductID = "tblProduct.ProductID", ProductName = "tblProduct.ProductName" };
相当于 tblProduct p = GetAProduct();
if (p == null) { p = new tblProduct(); p.ProductID = "tblProduct.ProductID"; p.ProductName = "tblProduct.ProductName"; }
[其他解释]
tblProduct t1 = new tblProduct(){ProductName = "t1"}; tblProduct t2 = new tblProduct(){ProductName = "t2"}; string name = tblProduct.ProductName; // t1 or t2 ?
[其他解释] 为啥要用同名的呢? public class tblProduct { public int ProductID { get; set; } public string ProductName { get; set; } public struct Product { public static string ProductID = "tblProduct.ProductID"; public static string ProductName = "tblProduct.ProductName"; } } [其他解释] 我想用类的实例来存取数据,没有实例时,则只返回成员的名称。 你这个想法估计不是很好。 用类的实例调用时怎么可能返回静态属性呢? 比如下面的代码: tblProduct tp = new tblProduct(); string pName = tp.ProductName;//调用实例需要对象引用,而静态属性要直接用类名来调用。 如果这个引用是null的话,直接就报错了。就算你上面的代码编译通过,也不可能调用到静态属性的。 [其他解释]
class daoContext<T> { public static T getModel(T pototype) { PopulateDBTo(prototype); return prototype; } }
tblUser user = daoContext.getModel(new tblUser(){UserID = 100} );