Список значений из c # становится дополнением Latin-1 в массиве javascript - PullRequest
0 голосов
/ 28 января 2019

У меня есть база данных со значениями продуктов, поступающих в мое приложение ASP.NET Core, и одним из атрибутов объектов, поступающих из базы данных, является логическое значение, называемое Eternal.Я сортирую все объекты, у которых есть вечный статус True, и вот как я это делаю:

public IActionResult Index()
    {
        using ( var db = new DataBaseContext())
        {
            var model = db.product.Where(p => p.Eternal).ToList<Product>();

            return View(model);
        }

    }

Это прекрасно работает, и все значения появляются как UTF-8, но когдаЗатем я передаю все эти значения в свой массив javascript, значения которого выводятся на страницу в виде Latin-1 Supplement.

Вот как я добавляю значения c # в мой массив javascript (MenuArray) и мою попытку преобразования Latin-1 в UTF-8 внутри страницы бритвы:

<script type="text/javascript" charset="utf-8">
@foreach (Product prod in Model)
{
    <text>
        var obj = {
            "MenuRowId": -1,
            "WeekDay": "Evig",
            "Food": "@prod.Description",
            "Price": @prod.Price,
            "Cabinet": "@prod.Cabinet",
            "Eternal": "@prod.Eternal"
        };
        decode_utf8(obj);
        MenuArray.push(obj);
    </text>
}
EmptyMenuAddRowCreateMenuFunction();
function decode_utf8(s) {
    return decodeURIComponent(escape(s));
}
console.log(MenuArray);
</script>

Дляпример:

У меня есть атрибут Description на всех объектах, и одно из описаний объектов - Kött, и это значение будет напечатано на странице как K&#xF6;tt.

Я быбудьте счастливы, если у кого-то есть представление о том, как решить проблему.Я искал в интернете, но не могу найти решение для моей ситуации.

Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...