Asp.net
LINQ:自定義列名
更新
我基本上將查詢綁定到 WinForms
DataGridView。我希望列標題合適,並在需要時有空格。例如,我想要一個列標題First Name而不是FirstName.如何在 LINQ 中創建自己的自定義列名?
例如:
Dim query = From u In db.Users _ Select u.FirstName AS 'First Name'
我解決了自己的問題,但是您的所有答案都非常有幫助,並為我指明了正確的方向。
在我的
LINQ查詢中,如果列名有多個單詞,我會用下劃線分隔單詞:Dim query = From u In Users _ Select First_Name = u.FirstName然後,在 的
Paint方法中DataGridView,我用空格替換了標題中的所有下劃線:Private Sub DataGridView1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles DataGridView1.Paint For Each c As DataGridViewColumn In DataGridView1.Columns c.HeaderText = c.HeaderText.Replace("_", " ") Next End Sub
正如 CQ 所說,您不能為欄位名稱留出空格,但是您可以返回新列。
var query = from u in db.Users select new { FirstName = u.FirstName, LastName = u.LastName, FullName = u.FirstName + " " + u.LastName };然後你可以從上面綁定到變數查詢或循環遍歷它……
foreach (var u in query) { // Full name will be available now Debug.Print(u.FullName); }如果您想重命名列,可以,但不允許使用空格。
var query = from u in db.Users select new { First = u.FirstName, Last = u.LastName };將 FirstName 重命名為 First,LastName 重命名為 Last。