将字符串传递给匿名对象到Tag Helper

时间:2019-01-27 18:50:04

标签: asp.net-mvc asp.net-core-mvc tag-helpers asp.net-core-tag-helpers

我的标签助手的用法:

<website-information info="new WebInfo { Age = 55, Author = "Test" }"></website-information>

如何正确传递作者字符串属性?当我写Author =“时,它认为info属性应如下所示:

new WebInfo { Age = 55, Author = "

我遇到编译错误

2 个答案:

答案 0 :(得分:0)

您不能只抛出一个复杂的对象。取决于您希望输出在客户端上看起来如何准确,让我们说:

<website-information info="Age:55,Author:Test"></website-information>

然后您将执行以下操作:

<website-information info="@("Age:55,Author:Test")"></website-information>

或:

@{
   var webInfo = new WebInfo { Age = 55, Author = "Test" };

   <website-information info="@("Age:" + webInfo.Age + ",Author:" + webInfo.Author)"></website-information>

}

答案 1 :(得分:0)

Razor允许我们使用@来评估C#表达式。因此,您可以使用@来获取一个复杂的对象。

对于您的情况,您可以简单地使用以下代码:

<website-information info='@(new WebInfo{Age=22,Author="author1"})'></website-information>

<website-information info="@(new WebInfo{Age=33,Author="author2"})"></website-information>