如何将T转换为对象

本文关键字:对象 转换 | 更新日期: 2023-09-27 18:00:34

将T转换为实体时出错

public T Add(T entity)
{
    CAFMEntities db = new CAFMEntities();
    db.TabMasters.AddObject((TabMaster)entity);
    db.SaveChanges();
    return entity;
}

它给了我一个错误:

无法将类型"T"转换为"CAFM.Data.EntityModel.TabMaster"

谢谢。

如何将T转换为对象

那么,您希望如何应用转换?T在哪里申报?您可以更改它,使您拥有:

class WhateverClass<T> where T : TabMaster

这时你就不需要演员了。或者,如果不能约束T,可以使用:

db.TabMasters.AddObject((TabMaster)(object) entity);

另一种选择是:

db.TabMasters.AddObject(entity as TabMaster);

尽管就我个人而言,我不太喜欢这样——我更喜欢对演员阵容进行更严格的检查。