2011-02-27 60 views
2

退房斯科特Guthrie的博客此代碼示例:http://weblogs.asp.net/blogs/scottgu/image_43366964.png剃刀聯模板項目關鍵字在VB

通知item是在C#中當前正在執行的項目的引用,什麼是VB.NET相當於關鍵字?

謝謝。

編輯:我要補充這是我的實際執行的方法接受一個模板:

Public Function RenderInlineTemplate(ByVal template As Func(Of RazorSamplesWeb.Models.SamplesModel, Object)) As IHtmlString 
    Return New HtmlString("<div style='display:inline;'>" + template(Model) + "</div>") 
End Function 

而且我得到這個錯誤:

Compiler Error Message: BC30201: Expression expected.

Source Error:

Line 101: Line 102:Function with Template: Line 103:@RenderInlineTemplate(@@String.Concat(item.Name, " (", item.City, ", ", item.State, ")")) Line 104: Line 105:

回答

1

我從來沒有找到解決方法,所以它似乎尚不支持。

1

事情是這樣的:

@Code 
    Dim grid = New WebGrid(Model.Products) 
End Code 

@grid.GetHtml(
    columns := grid.Columns(
     grid.Column("Name", "Product", style := "product"), 
     grid.Column("Description", format := Function(i)i.Description), 
     grid.Column("Price", format := Function(i) String.Format("${0}", i.Price)) 

    ) 
) 
+0

是的,這是行得通的,但你是否說與C#中的支持水平不同,因爲C#不需要純粹的服務器端方法?在我看來,必須有某種方式...... – 2011-02-27 22:49:47

+0

@Brian,你在說什麼服務器端方法?我不確定我是否理解你的問題。 – 2011-02-27 22:50:44

+0

看看我附加的鏈接...你有格式,它有客戶端和服務器內容的混合,你有什麼是格式化的字符串。這是一個例子,我的真實情況與此類似,但我不能只寫出服務器端字符串,我需要這個客戶端/服務器組合。 – 2011-02-28 03:10:23