使用基类对象更新类对象

时间:2018-10-24 11:35:29

标签: c# asp.net-mvc c#-4.0 casting entity-framework-6

我有两个班级

public class UserInfoExtraBase
{
  UserName string {get; set;}
  UserAddress1 string {get; set;}
  UserAddress2 string {get; set;}
}

public class UserInfoExtra : UserInfoExtraBase
{
  UserInernalCompanyId string {get; set;}
  UpdatedDate Datetime {get; set;}
}

UserInfoExtraBase类正在从前端使用数据。需要从后端更新UserInernalCompanyId和UpdatedDate。我正在尝试实现以下目标,但它使我出错,因为 我将输入作为UserInfoExtraBase类对象,但是尝试更新不具有这两个额外属性的UserInfoExtra类对象。

public void MyFunction(UserInfoExtraBase UserInforExtraBaseObj)
{
   // Need to convert UserInfoExtraBaseObj to UserInfoExtraObj
   // What I have tried, but it is giving me error "Unable to cast"
    UserInfoExtra UserInfoExtraObj= (UserInfoExtra)UserInfoExtraBaseObj;

    context.Entry(UserInfoExtraObj).State = EntityState.Modified;
    UserInfoExtraObj.UserInernalCompanyId = GetUserId();
    UserInfoExtraObj.UpdatedDate = DateTime.Now;
}

如何将UserInfoExtraBase类对象\ cast转换为UserInforExtra类对象并添加这两个属性。

我尝试过的事情:

  

UserInfoExtra UserInfoExtraObj =(UserInfoExtra)UserInfoExtraBaseObj;

但这给了我一个错误-“无法投射”

0 个答案:

没有答案