问题标签 [asp.net-mvc-controller]

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.

0 投票
1 回答
1425 浏览

asp.net - 如何将区域与来自不同组件的控制器一起使用?

我正在开始一个新的 ASP.NET MVC 项目,我决定将我的控制器放在不同的程序集中。Evertyhing 工作正常,但我遇到了一个问题:我在 MVC 项目中创建了一个新区域,称为 Administration。我的单独程序集中有一个 AdminController 类,它应该从我的管理区域返回视图,但是每次它尝试返回视图时,它都会在错误的位置查找它(~/Admin/SomeView.cshtml 而不是 ~/Administration /Admin/SomeView.cshtml) 如何告诉控制器在想要的区域中查找视图?

0 投票
2 回答
2949 浏览

jquery - MVC 3 AJAX Function Post Two Times

I am using Visual Studio 2010 and MVC 3 with AJAX/JQuery. The issue I am having is that the code is posting something twice. It only happens when you post something, then do it again.

Here is my JS:

My HTML page has a JQuery dialog box that calls a CreateCommentPartial.cshtml file. When the user fills it out, it calls the "CreateComment" function, which then calls the "GetComments" and refreshes the comments after the new one is posted.

Now, here's the issue. If you click the "Create Comment" link again, without reloading the page and fill out the form, the "CreateComment" is fired twice and "GetComments" is fired twice as well. Firebug shows me this as well.

What am I doing wrong here? If you reload the page (F5) after posting it doesn't do this. But it defeats the purpose. One should be able to submit a comment multiple times without reloading the page.

0 投票
3 回答
2487 浏览

asp.net-mvc - 减小 asp.net mvc 控制器的大小

我有一个控制器。“订单控制器”。目前是1800行。我喜欢缩小尺寸。我正在使用静态辅助方法,这很好,但我使用 ninject 来调用我的存储库,因此在不传递属性的情况下无法访问静态方法中的存储库。

有哪些降低控制器噪音的好方法?

0 投票
5 回答
2662 浏览

asp.net-mvc - 允许在 asp.net mvc 2 控制器名称的 URL 中使用连字符

以上适用于操作,但我希望能够对控制器执行相同(或类似)操作,即 URL 名称中也有连字符。有什么简单的方法可以实现这一点(我尝试了 ActionName 属性但没有运气)

0 投票
2 回答
6316 浏览

layout - MVC 3 布局和控制器

我正在构建一个 MVC 3 应用程序。应用程序应该能够根据子域显示不同的布局(例如:customer1.mysite.com -> layout1; customer2.mysite.com -> layout2; 等等...)它还将具有移动和布局即 6。

我已经看到它们是 _ViewStart.cshtml,我可以利用它来执行设置布局的逻辑。但我没有得到的是控制器在哪里?我应该在视图中编写所有代码吗?

另一个关于布局的问题,你如何分解常见行为的代码?你有那个控制器吗?

最后一个我在asp.net MVC2中看到了区域的概念,现在我们有了Razor,它已经过时了吗?

感谢您的帮助

弗雷德

0 投票
2 回答
365 浏览

jquery - 许多隐藏的 div 显示在带有 jQ​​uery 对话框的 ASP.NET MVC 页面中。我应该使用部分视图吗?

我已经在我的第一个主要的 ASP.NET MVC 应用程序(加上很多 jQuery)上工作了一个月左右,我对它非常满意。我有一个看起来像这样的页面。(实际数据已更改以保护无辜者。)

电影 div 包含一个可供选择的电影表。演员、演员评级和评级评论 div 在这一点上都隐藏了。单击电影时,我有一个 jQuery live() 事件来获取单击、发布到操作、获取数据,然后是一个回调函数来获取数据并将其放置在模式弹出窗口中。(我认为我的命令是正确的,如果我在任何地方做错了,请随时告诉我。)

由于演员、演员评级和评级评论都可能需要加载到一个页面中,因此我的控制器最终会执行一个巨大的操作来加载所有这些数据。另外,评级评论 div 可能会关闭演员评级模式并以新的模式打开自己。最重要的是,我想实现 jQuery 地址插件以允许后退按钮返回到以前打开的模式。

变得相当复杂。我应该为每个 div 使用部分视图吗?我应该有一个控制器,每个控制器都有动作吗?或者每个部分视图/div的控制器?部分 div 似乎是要走的路,但我想在我跳入并分解我的代码之前我正在寻找一些指导。任何意见,将不胜感激。

编辑:另外,我的演员评级部分视图可能需要来自演员部分视图的一些数据。我也只是在演员数据中加载了我的 ActorRatings 控制器动作吗?(我将强类型视图模型传递给视图。)

0 投票
1 回答
1085 浏览

asp.net-mvc - MVC3 – ViewModels 和控制器功能:建议的设计模式

我已经为一个不太可用的呼叫中心应用程序构建了一个简单的基于 MVC3 的工单入口站点,并且正在尝试重构我的原型以更好地遵循设计模式,部分是为了使其更易于维护,但主要是作为一种学习练习。面向用户的视图是一种由基本用户信息和一些允许选择各种资源类型的面板组成的表单。每种资源类型(硬件、软件等)都以相同的方式显示:使用带有添加/删除按钮的双重可过滤列表框、可选的“理由”文本区域,如果请求的资源需要理由,则有条件地显示,以及一般注释。我为各个面板构建了以下 ViewModel:

然后根据需要,主 ViewModel 由多个 RequestableLists 组成:

我为 SimpleRequestViewModel(及其变体)创建了一个强类型视图,并为 RequestableList 创建了一个强类型 EditorTemplate,它连接了双列表框、过滤和 jquery。一切都很好并且正在工作,但代码目前有异味。

发布到控制器时,如果模型有效,我必须将其翻译成可读的文本描述,以便在呼叫中心应用程序中创建新工单。让控制器执行翻译成可读文本感觉不对,但是当我尝试设计另一个类来翻译视图模型时遇到了障碍。

  1. 仅发布选定的项目值,因此在将请求转换为文本之前,我必须首先为提供的值查找适当的文本(它们在描述中是必需的)。控制器是当前唯一有权访问此查找查询的呼叫中心数据模型的对象。
  2. 有 2 个相似的 ViewModel 包含不同的 RequestableLists 组合,因此任何翻译器都必须能够翻译各种组合。一个只有硬件和软件,另一个可能有硬件软件,还有几个 RequestableList。

我考虑直接在 ViewModel 中覆盖 ToString() 但不喜欢那里的业务逻辑(条件渲染),并且再次发布后,ViewModel 不包含列表框中所选项目的文本,因此它需要访问到数据模型。将发布的值转换为文本,因为它当前在控制器中处理,因为它是在 switch 语句中处理的。控制器获取每个发布的 RequestableList 并在构建新的工单描述之前填充原始的“可用”字段。

所以,我的问题:

  1. 您会推荐哪些模式来执行已发布的视图模型到工单描述的翻译?
  2. 当您需要文本和值时,您通常如何处理选择框的“仅发布值”问题?
  3. 我有没有更好的方法来解决这个问题?

同样,我希望这对我来说是一次学习经历,并且如果需要,我非常愿意提供额外的信息或描述。

0 投票
1 回答
1338 浏览

xml - 如何从控制器渲染 XML 数据以高效查看

我正在开发一个需要渲染 XML 数据(这将是我的模型)的项目。它基本上将以类似于标准数据库表示的行列格式表示。除了您应该能够单击一行并从那里执行一些基本数据输入。我最初考虑使用 Json 数据和 Jgrid 来做到这一点,但似乎它可能比它的价值更麻烦。从与我的同事的对话来看,似乎可以将 xml 从控制器直接发送到视图。由于 XML 只是一个字符串,我想这并不难。我只是有点不确定如何完成这项工作。所以我想我提到了所有要问的问题,如何在从控制器获得的视图中呈现 XML 数据。在这种情况下,最佳做法是什么?将 XML 从控制器发送到视图的最佳方式是什么?呈现此视图的最佳方式是什么?有没有一种方法可以使一行 xml 数据“可点击”?我应该只是字节子弹并尝试找出jqGrid吗?

谢谢,德里克

0 投票
1 回答
1718 浏览

asp.net-mvc-3 - 如何在 MVC 3 中向 ValidationSummry 返回错误

我有一个我不知道如何实施的想法。在 MVC 3 控制器中,我有一个 if 语句,如果 if 语句失败,我希望控制器返回一条错误消息。而且我在该页面上有一个 ValidationSummery,所以如果它能够捕获错误消息并呈现它会更好..

我该怎么做呢?

谢谢

0 投票
3 回答
74 浏览

asp.net-mvc-3 - 可以将控制器放在模型文件夹中吗?

因为我基本上每个视图都有一个模型。我在控制器名称之后的模型文件夹下的子文件夹中排列我的模型。/Models/News.

我还决定将我的控制器移动到这些文件夹中。
/Models/News/_NewsController.csw/类名仍然是NewsController.

我觉得更容易找到。

这在任何方面都是不好的做法吗?安全等