1 回答

TA貢獻(xiàn)1803條經(jīng)驗 獲得超3個贊
我假設(shè)您可以向上下文的構(gòu)造函數(shù)添加一個布爾參數(shù):
public MyEntity(string connectionString, bool includePerson)
{
_includePersion = includePerson;
}
現(xiàn)在上下文可以有一個屬性Person,或者最好是復(fù)數(shù)形式People:
public IQueryable<Person> People
{
get => _includePerson
? Set<Person>()
: (new[] { new Person() }).AsQueryable();
}
從技術(shù)上講,您現(xiàn)在應(yīng)該擺脫困境,因為沒有 to/from 導(dǎo)航屬性Person。但是,我擔(dān)心這種構(gòu)造可能會在下游產(chǎn)生比乍一看預(yù)期更多的后果。我會盡一切努力避免它。在Person沒有它的情況下向數(shù)據(jù)庫添加一個空表會好得多。這甚至可以由應(yīng)用程序本身完成,前提是登錄的數(shù)據(jù)庫用戶具有所需的 DDL 權(quán)限。
- 1 回答
- 0 關(guān)注
- 148 瀏覽
添加回答
舉報