问题标签 [razor-declarative-helpers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
string - 我可以在 Razor 中使用 @helper 语法返回字符串吗?
我有一个 RazorHelpers.cshtml 文件,app_code
其中如下所示:
但是,我有一个案例,我想将结果用作@Html.ActionLink(...)
. 我无法将结果转换为字符串。
有没有办法从 Razor 助手返回纯字符串,以便我可以在 HTML 和@Html
助手中使用它们?
asp.net-mvc-3 - 你可以在@Helper 中使用@Helper 吗?
我不确定这是可能的。
@Helper
我在一个视图和其他视图中有一堆's:
我有在视图和其他视图中使用的重复代码:
实际@ViewHelper1
有更复杂的代码,但这并不重要(我认为)。
好吧,由于每个视图都有许多@Helper
's (30+ 个视图,每个 10-15@Helper
个)并且<table>
结构是相同的,我想知道如何去创建一个封装结构然后传递视图的@Helper
in .App_Code
<td>
@Helper
说:
或者这是否可能,然后在视图中调用它,例如:
如果是我只需要语法方面的帮助。
一如既往,非常感谢。
asp.net-mvc-3 - 将函数放入 @helper 时的空引用 - 我可以将它放在哪里或如何处理它?
我正在尝试计算价格,例如:
这在.cshtml
视图文件中运行良好,但不用说实际代码要长很多(更不用说我想应用 3 种不同的计算)。
所以我开始考虑在调用中创建一个@helper
文件,这样我就可以这样调用它:App_Code
Calculate
Pricing.cshtml
但这会引发“无法对空引用执行运行时绑定”错误。
我得到了错误,我明白这是一个限制。谁能建议我如何才能做到这一点?我想到了一个类文件,但不知道如何将它转换成一个(如果这是一个更好的选择)。非常感谢代码示例。
更新: 我暂时将此计算放在视图中,因为我无法将其转换为我研究过的其他选项:
- 文件中的一个
@helper
函数App_Code
- 但这是我遇到的“空引用”错误。 - 一个
.cs
类文件(或者可能只是将它添加到我的 ViewModel - 但我无法正确编码。 - 将它放在控制器中的建议 - 但代码很长。
创建一个自定义的 Html Helper 类来尝试将其称为 `@Html.Calculate([parameter?], [parameter?]) - 但对我来说,这比 #2 复杂一些。- 适当注明的评论。
再次注意,我提供的示例是一个简单的、简单的示例。我有 30 多个条件可以用多个选项来探索每个条件(例如上面的a
's 和b
'),其中一些变得更加复杂:
如果我使用 C# 代码(在它自己的.cs
文件、自定义 Html Helper 或 ViewModel 中),所有的声明都会出错。
请注意,这不是我遇到问题的实际计算。上面的那个片段可以用来执行我的计算。I am just struggling to get it to an appropriate option I listed above.
UPDATE 2
I am having a lot of trouble converting this to it's own class (I am not a programmer - sorry for not understanding). This is part of my function in the view (just a snippet, hopefully I can figure out the rest if you provide a code sample):
Don't bust my balls for using enums
. :)
Again, although the calculation is not the appropriate thing to do in a view, the above works - I get the calculated result I am expecting based on user choices.
My Price.cs
model (again, just something basic so you get the idea):
asp.net-mvc-3 - 需要 MVC2 / MVC3 Html Helper 或 Editor Template 解决方案
我有一个运行良好的基于 jquery 的定制查找控件,但我希望将它封装成一个更整洁的解决方案。以下是 Razor 视图中包含的代码。在幕后还有一个名为“InitLookup”的定制 jquery 函数,它在运行时完成大部分工作。
理想情况下,我想将其缩减为一个更整洁、更可重用的解决方案,其中 javascript InitLookup() 是动态创建并封装在其中的,可能如下所示......
...其中“marMIS”是控制器,“ContactLookup”是控制器方法。这些是用于在查找期间获取数据的地址。
我试图在/Views/Shared/EditorTemplates文件夹中创建一个名为 DynamicLookup 的编辑器模板,但是在使用@Html.DynamicLookup(...
有这个的接盘侠吗?干杯!
------------ App_Code 建议如下!原始问题的附录!-------------------------
好的,所以我已将我的代码复制到一个名为 CustomHelpers.cshtml 的新 App_Code 文件夹文件中。如何将 lambda 表达式传递到此处然后使用它?
asp.net-mvc-3 - MVC 3 RAZOR 编码逻辑即使在 @{ } 中也会呈现为文本
以下代码行有什么问题?
以下代码行即使在 @{ } 内也会呈现为测试
指导我在 MVC RAZOR 中实现此类编程逻辑的最佳方式
谢谢
@保罗
asp.net-mvc - 通过子视图的更改使视图模型保持最新
我有一个 Razor 页面,其中使用 Html.DisplayFor() 插入了 2 个子视图:
当我从视图 2 调用操作时,我需要能够在保存模型之前获取模型的最新内存状态(假设行已添加到文档中)。不幸的是,我似乎只能得到第一次加载页面时的模型。我可以看到子视图中使用的视图模型的更改。例如,在付款子视图中,我可以看到付款正在更新,但不是其他视图中已更新的行。
有什么方法可以让我从另一个视图中看到一个视图的变化,或者让它们改变同一个对象?
asp.net-mvc - ASP.NET MVC - 剃刀。使用@helper 创建面板
我正在尝试使用 ASP.NET MVC 中的 @helper 实用程序创建以下帮助程序。想法是创建一个 Panel 并从页面调用此帮助程序以设置面板的标题和正文(我希望在同一页面上有多个面板,因此我不能使用布局)。
这里是帮手:
在这里我想如何调用这个助手:
c# - 卡在 Razor 扩展上
我正在尝试将一些常用代码重构为帮助程序扩展并且坚持使用语法,主要是因为我没有完全掌握泛型、lambda 表达式等。
我希望能够将它放在我的视图中,并让它使用我的模型的字段(例如 FirstName)来生成一些利用其他 Razor 扩展的 HTML:
目前我有:
问题:
- 这是正确的方法吗?我希望能够将此方法与任何视图模型字段一起使用。
- 我是否包含了正确的命名空间?这将进入 app_code 文件夹
- XXXXXX 里有什么?
asp.net-mvc-3 - mvc 3 dropdownlistfor - 选定的值始终为空
我有这样的下拉列表:
和控制器:
我的下拉列表的视图部分:
当我选择一些项目时,httppost regionId 始终为空。请帮忙。
asp.net-mvc-3 - MVC4 WebGrid 中的项目类型是什么
我正在使用 webgrid 来显示记录列表。
我的观点与 IEnumerable 紧密结合。
我正在将 webgrid 与模型绑定。
我正在尝试使用@helper 方法格式化列。@helper 方法采用 Models.SitesConfig.Configuration 类型的参数。
当我尝试加载视图时,我收到无效参数错误。
这是我的看法。
有人可以帮我解决这个问题。