访问继承的成员

use*_*165 3 c#

我有这个LoanWithClient继承自以下的模型Loan:

public class LoanWithClient : Loan
{
    public Client Client { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

如何在不显式写入其属性的情况下访问整个继承的Loan对象?

LoanWithClient不包含贷款的定义

return new LoanWithClient
{
     **Loan** = loan, //The Loan is erroring: LoanWithClient does not contain a definition for Loan
     Client = client
};
Run Code Online (Sandbox Code Playgroud)

类贷款:

public class Loan
{
    public int ID { get; set; }
    public string Address { get; set; }
    public string City { get; set; }
    //etc..
}
Run Code Online (Sandbox Code Playgroud)

小智 5

该类LoanWithClient继承自Loan.这意味着子类具有父类的所有属性.但这并不意味着子类包含父类作为属性.你可以写这样的类 -

public class Loan
{
    public int ID { get; set; }
    public string Address { get; set; }
    public string City { get; set; }
    //etc..
}

public class LoanWithClient
{
    public Loan Loan { get; set; }
    public Client Client { get; set; }
}

return new LoanWithClient
{
     Loan = loan,
     Client = client
};
Run Code Online (Sandbox Code Playgroud)

如果你想保留你的班级架构,你可以像以下方式一样返回 -

return new LoanWithClient
{
     ID = loan.ID,
     Address = loan.Address,
     City = loan.City,
     //etc..
     Client = client
};
Run Code Online (Sandbox Code Playgroud)