在使用自定义Helper方法时,开始我试了很多次都不成功一直报错“找不到WebMatrix.WebData.dll、WebMatrix.Data.dll”。
应该是一个bug,估计正式版不会有这个问题。解决方案是:
在使用自定义Helper时,需要引用默认C盘路径下的WebMatrix.WebData.dll、WebMatrix.Data.dll类库并Copy到本地,否则会出错。
如上图所示,首先在网站根目录下添加一个“App_Code”文件夹,并创建一个Razor的ViewPage为MyHelpers.cshtml。代码如下图所示:
通过@helper{}声明就可以定义一个Helper辅助函数,上述函数根据姓名循环输出一个列表。这种html和cs混合输出的helper相当简洁,相对于MVC2
写一个helper容易多了。
下面在页面中调用,只要一行代码就可以了:
同样可以在其他页面调用,输出结果如下:
注意的是,写法上将MyHelpers文件名加上,如果有文件夹则文件夹名字也要加上。使用规则是@FolderName.FileName.HelperName。