因此,我正在进行我的第一个真正的MVC网站开发(之前,我一直在使用已经开发的模板)。那里我们有一个用于控制控件(窗体等)的控制器,然后有一个仅用于处理所有HttpPost操作等的控制器。由于这意味着我可以在两个控制器中都有一个名为_ContactForm的局部视图,因此可以设置一个窗体视图,另一个将处理表单返回的帖子。

我只是想知道现在使用一个控制器是否有任何标准的命名约定。我有一个名为_ContactForm的局部视图,该视图设置了该视图,但是Visual Studio通知我,即使我为该方法加上[HttpPost]前缀,我也无法使用第二个_ContactForm来处理HttpPost。

是最好的一种方法是在下划线前加一个下划线,或者是否有通常使用的命名约定?

任何帮助将非常感激!

谢谢,
麦克风。

最佳答案

我知道这个问题很旧,但是由于没有答案...

即使在控制器中使用HttpPost属性修饰,您也不能在控制器中拥有2个具有相同确切签名的同名方法。通常,GET方法要么不带参数,要么不带字符串或其他内容,而POST通常采用模型,JSON数组或更重要的东西。

关键是,您需要确保方法签名有所不同,即使一个用于GET而一个用于POST。

这是另一个帖子,其问题非常相似,甚至不完全相同:

post and get with same method signature

祝您好运,MVC编码愉快!

关于c# - MVC5中的命名约定,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28451974/

10-09 12:29