动态生成的Javascript,在ASP.NET MVC中的CSS [英] Dynamically generated Javascript, CSS in ASP.NET MVC

查看:927
本文介绍了动态生成的Javascript,在ASP.NET MVC中的CSS的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

ASP.NET允许生成动态使用服务器标签(剃刀或ASPX)HTML。但有产生的* .js或者*的CSS内容的方式一样,不是使用内联(嵌入式)CSS / JavaScript的其他任何好办法。如今像Ajax技术越来越多来自服务器端的Javascript更多的逻辑转移到客户端。这将是巨大的,有这样的机会来生成JS动态地使用ASP.NET提供了生成HTML的所有灵活性。

ASP.NET allows to generate HTML dynamically using server tags (razor or ASPX). But Is there any good way to generate *.js or *.css content the same way, other than using inline(embedded) CSS/Javascript. Nowadays with technologies like Ajax more and more logic moves from server-side to client side in Javascript. It would be great to have that opportunity to generate JS dynamically using all flexibility that ASP.NET provides for HTML generation.

例如,我的JavaScript包含的JavaScript渲染过程中,从服务器加载初始数据淘汰赛视图模型声明,以及其他一些JS-功能,我的HTML的因此而不是嵌入的脚本我想有这样的脚本引用:

For example, my Javascript contains Knockout view model declaration with initial data loaded from server during Javascript rendering, and some additional js-functions, so in my Html instead of embedded scripts I want to have script references like that:

<script src="~/Scripts/ContactViewModel.js?contactId=@Model.ContactId"></script>

又如,在那里显影剂可能需要它使用用户简要表基于CSS。用户配置文件信息包含必须的CSS生成过程中得到尊重样式信息(字体,颜色,不只是题材),所以在我看来,我会碰到这样的:

Another example, where developer might need it is using user-profile based CSS. User profile information contains style information (fonts, colors, not just theme) that must be respected during CSS generation, so In my view I will have something like:

<link href="~/Styles/CurrentUserOverrides.css" rel="stylesheet" />

CurrentUserOverrides.css 将动态的基础上验证用户的配置文件数据生成。

CurrentUserOverrides.css will be generated dynamically based on profile data of authenticated user.

如何做到这一点使用ASP.NET MVC?我想找到解决方案,允许我创建使用ASP.NET,与正常工作intellisence和其他一切东西VS提供了ASP.NET的观点动态HTML我这样做容易。

How to do that using ASP.NET MVC? I want to find solution that will allow me to do this as easy as I create dynamic HTML using ASP.NET, with properly working intellisence and everything else what VS offers for ASP.NET views.

推荐答案

最好的解决方案到目前为止,我发现这是以下内容:

The best solution so far I found for that is the following:

动态JavaScript和CSS在ASP.NET MVC使用剃刀意见

您刚刚创建视图:CurrentUserOverrides.css.cshtml,ContactViewModel.js.cshtml。该意见将包含一个HTML块(或),因此智能影音感工作正常。然后创建控制器呈现这一观点,修剪根标签,并返回适当的内容类型的内容。

You just create views: CurrentUserOverrides.css.cshtml, ContactViewModel.js.cshtml. This views will contain single HTML block ( or ), so intelli-sense works fine. Then you create controller that renders that view, trims the root tag and return content with appropriate content type.

这篇关于动态生成的Javascript,在ASP.NET MVC中的CSS的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆