簡體   English   中英

從C#中的類對象獲取屬性

[英]Get property from class object in C#

我需要從存儲過程中填充的一個類中獲取三個屬性的值,但不知道如何。

我的viewModel:

public class SitesVM
{
    public int ID { get; set; }
    public string SiteName { get; set; }

} 

我在Global.asax文件中填充一個類,如下所示:

string siteIpAddress = "67.46.255.255";  //HardCoded for testing
var site = context.Database.SqlQuery<SitesVM>("spSelect_SiteByIp", siteIpAddress);

該站點填充了正確的數據,我可以從Locals調試屏幕中看到它,但是我不知道如何將ID和SiteName檢索到變量中。 我嘗試了以下

var siteID = site.ID; //

但是我得到這個構建錯誤:

'System.Collections.Generic.IEnumerable'不包含'ID'的定義,並且找不到擴展方法'ID'接受類型為'System.Collections.Generic.IEnumerable'的第一個參數(您是否缺少using指令?或裝配參考?)

它返回IEnumerable<SitesVM>而不是SitesVM

如果您只想要一個結果並且確定只有一個結果,則可以嘗試:

site.Single().ID;

這將返回序列中單個成員的ID,如果結果為零或> 1,則將引發異常。

SqlQuery()函數不返回SitesVM對象,而是返回此類對象的枚舉( IEnumerable )。 查詢結果中可能有零行或更多行。

使用First()方法獲取返回的第一行。 請注意,如果查詢不返回任何行(枚舉為空),這將引發InvalidOperationException

暫無
暫無

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

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