Передача строки анонимному объекту в Tag Helper - PullRequest
0 голосов
/ 27 января 2019

Использование моего помощника по тегам:

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

Как правильно передать строковое свойство Author?Когда я пишу Author = ", он думает, что атрибут info должен выглядеть так:

new WebInfo { Age = 55, Author = "

Я получил ошибку компиляции

Ответы [ 2 ]

0 голосов
/ 28 января 2019

Razor позволяет нам использовать @ для оценки выражения C #.Таким образом, вы можете использовать @ для получения сложного объекта.

Что касается вашего сценария, вы можете просто использовать следующий код:

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

<website-information info="@(new WebInfo{Age=33,Author="author2"})"></website-information>
0 голосов
/ 27 января 2019

Вы не можете просто бросить сложный объект.В зависимости от того, как именно вы хотите, чтобы выходные данные выглядели на стороне клиента, скажем:

<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>

}
...