簡體   English   中英

C#:如何為實體表聲明變量?

[英]C# : how to declare a variable for an entity table?

我正在使用 C# 實體框架到數據庫表中的 select 記錄。 根據選擇標准,我將使用不同的 select 語句。

    if ( condition1 )
    {
        var records = _context.Member.Select( .... )
    }
    else if (condition2)
    {
        var records = _context.Member.Select( .....)
    }......

然后,我需要根據是否有記錄做出一些決定並處理這些記錄。

    if (records != null)
    {

    }
    else if (....)

編譯器抱怨"records" does not exist in the current context 我認為發生這種情況的原因是記錄是在 if 塊中聲明的。 我不想在 if 塊中執行第二步,因為處理是相同的並且很長。

我試過先在塊外聲明記錄,但我不知道要使用什么類型。 那么如何聲明一個變量來保存從實體框架返回的記錄呢?

謝謝。

什么數據類型是記錄? 找出它並調用它。如果您使用的是 Visual Studio,只需 hover 超過 Select 方法。 它會彈出一些關於方法的信息,在方法名稱前還有一個返回類型。

然后編寫這段代碼:

T records = null; // or some kind of empty collection

if ( condition1 )
{
    records = _context.Member.Select( .... )
}
else if (condition2)
{
    records = _context.Member.Select( .....)
}

您遇到此問題的原因是“記錄”僅在“{}”花括號的 scope 中定義。 通過像我向您展示的那樣提出它,您可以將其移動到您做出決定的同一環境中

if (records != null)
{

}
else if (....)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM