javascript - 在 Razor View 页面中使用 C# 对象

标签 javascript c# asp.net-mvc-4 razor

我在 View razor 页面中有这行 C# 代码:

@{
    List<UserContact> userContacts = ViewBag.contacts;
    String contacts = Html.Partial("~/Views/Shared/Contacts.cshtml", userContacts).ToHtmlString();
}

我想在 JavaScript 函数中使用联系人变量的内容,因为联系人是一个 C# 对象,我无法在 JavaScript 函数中使用此变量。

有没有办法在Javascript函数中使用联系人变量? 也许因为类型是字符串,所以它可以转换为 JavaScript 变量?

最佳答案

您可以像平常一样使用@指令。您可以使用 Html.Raw 打印它:

var x = /* this is javascript */
@{
    ...

    @Html.Raw(contacts)
}

或者直接调用@Html.Partial:

var x = /* this is javascript */
@{
    ...

    @Html.Partial(...)
}

或者在这里声明:

@{
    ...

    string contacts = @Html.Partial(...)
}

稍后使用它:

@contacts

关于javascript - 在 Razor View 页面中使用 C# 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26528517/

相关文章:

javascript - 我可以创建一个设置为页面宽度的变量吗?

javascript - groupBy 带有下划线的对象数组.js

c# - 下拉列表中的项目重复

c# - 我如何根据一天中的时间或访问者的设备等规则更改 Orchard CMS 中站点的主页?

javascript - 在 React 中使用本地 .json 文件时,import 和 fetch() 有什么区别

javascript - 显示 12 小时制和 24 小时制时间

c# - 如何在不使用 AutoMapper 的情况下手动映射 DTO?

c# - Task.Run() 和在 Xamarin 表单上调用 async void AAA() 有什么区别?

asp.net - 将多个模型从一个 View 传递到 Controller

c# - 在 asp.net MVC 4 webapp 中,用户上传的文件存储在哪里?