我正在尝试将一个对象强制转换为一个模型类,但它在第二行引发了一个错误。
代码:
StoreToStoreRequestModel x = (StoreToStoreRequestModel)temp;
StoreToStoreRequestDetailsModel y = x.details;
型号:
public class StoreToStoreRequestModel
{
public int id { get; set; }
public string documentNo { get; set; }
public List<StoreToStoreRequestDetailsModel> details { get; set; }
}
我需要通过StoreToStoreRequestModel访问StoreToStoreRequestDetailsModel的属性,因为它是一个子类。
错误消息是:
Cannot implicitly convert type 'System.Collections.Generic.List<StoreToStoreRequestDetailsModel>' to 'StoreToStoreRequestDetailsModel'
答案 0 :(得分:3)
这是因为details
是List<T>
,它与StoreToStoreRequestDetailsModel
的单个实例不同。
所以你应该这样做:
List<StoreToStoreRequestDetailsModel> y = x.details;
如果你想访问该列表中的特定项目,那么你应该遍历它们并找到你想要的那个。或者使用索引或其他获取特定项目的方法。
例如,您可以得到的第一项:
StoreToStoreRequestDetailsModel first = x.details[0];
虽然我建议您确认首先确保有任何项目。