将JavaScript与C#/Razor结合使用的最佳(或正确)方法?

将JavaScript与C#/Razor结合使用的最佳(或正确)方法?,javascript,c#,razor,Javascript,C#,Razor,用Razor误用JavaScript代码的最佳方法是什么? 目前,我将JavaScript代码放在一个外部JavaScript文件“external.js”中,但我遇到了一个问题,即我无法直接访问模型的C#变量(我可以这样做,但这会使整个过程有点复杂)。当我将JavaScript代码嵌入到-Section/Tags中的视图中时,这只适用于Razor Syntax@Model.Variable 所以我考虑过这个情况,没有找到答案。我阅读并认为最好将所有JavaScript代码放在一个文件中,以便浏

用Razor误用JavaScript代码的最佳方法是什么? 目前,我将JavaScript代码放在一个外部JavaScript文件“external.js”中,但我遇到了一个问题,即我无法直接访问模型的C#变量(我可以这样做,但这会使整个过程有点复杂)。当我将JavaScript代码嵌入到-Section/Tags中的视图中时,这只适用于Razor Syntax@Model.Variable


所以我考虑过这个情况,没有找到答案。我阅读并认为最好将所有JavaScript代码放在一个文件中,以便浏览器只加载一次全部内容,然后从缓存中读取(性能)。但是,在每个视图中编写JavaScript代码而不是放在一个大文件中会更好吗?

将JavaScript直接放在视图中不会显著影响页面的负载(除非您的JavaScript真的是一个庞然大物)

当请求视图时,它将被传输(并随后被缓存)

如果您想在Javascript中直接使用razor变量,那么在视图中使用它是最明智的选择


当然,也就是说,视图是作为一个部分使用的——在这种情况下,您可能需要重新考虑设计,将Javascript直接放入视图不会对页面的负载产生任何显著影响(除非您的Javascript真的是一个庞然大物)

当请求视图时,它将被传输(并随后被缓存)

如果您想在Javascript中直接使用razor变量,那么在视图中使用它是最明智的选择


当然,也就是说,视图旨在用作局部视图-在这种情况下,您可能需要重新考虑设计

感谢您的解释,因此对于性能而言,它没有做出任何重要的表示,但这样做的“默认方式”是什么?我想很多.NETRazor应用程序是否会使用javascript?它们是如何工作的?感谢您的解释,所以对于性能而言,它并没有做出任何显著的改变,但这样做的“默认方式”是什么?我想很多.NETRazor应用程序是否会使用javascript?它们是如何工作的?您可以拥有视图中的动态javascript在调用时传入的静态javascript接受参数。您可以拥有视图中的动态javascript在调用时传入的静态javascript接受参数。