首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >前面的人应该如何处理Razor视图文件?

前面的人应该如何处理Razor视图文件?
EN

Stack Overflow用户
提问于 2015-03-03 17:36:03
回答 1查看 1.1K关注 0票数 1

我将用一个小团队启动一个新的.Net MVC项目。它有五个成员,两个后端开发人员和三个前端开发人员。

前端成员将单独工作,使用gulp/grunt、less/saas、jade和其他框架等工具构建该项目的html版本。他们更喜欢使用像Sublime这样的编辑器,并将在许多不同的设备上实时运行接口测试。

他们无法使用MVC,特别是Razor,因此我们需要两个存储库,一个用于前端,另一个用于back.The后端开发人员,在此过程中需要捕获已构建的html并在Razor中适合它。

有什么办法改进这个过程吗?我怎样才能缩小后台开发人员和前台开发人员之间的技术差距?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-04 04:37:57

海事组织,你太努力去适应你的团队成员的技能/愿望。如果完全忽略Razor/CSHTML,客户端与服务器端之间就不会有很好的衔接。您的总体架构/设计应该放在第一位,并决定这些决定。当然,您将考虑到您的团队的技能,这样您就不会让一个团队的Java开发人员采用C++。但是,这是一个极端,基本上是把设计/架构考虑抛出窗外,并说你将根据你的开发人员愿意使用的东西来划分应用程序。

撇开我的观点不说,,你可以让这件事成功,但有点痛苦。

首先,在不考虑与服务器交互的情况下,在真空中开发HTML要么会导致界面非常瘫痪,更像是90年代的静态网站。有几种情况下,您可以构建一个纯javascript而没有AJAX请求的单页应用程序,但这些场景非常罕见。

因此,您需要先构建服务器端,或者有一个设计步骤来模拟页面并讨论它的工作方式。

1) 设计页面及其特性,以及它与服务器的交互方式,识别哪些交互是导航操作,例如单击链接导航到另一个页面,而不是那些是AJAX操作。不要实现HTML,这是稍后出现的。作为一个团队,回顾每个开发项目所模拟的内容,并确保他们对所有的交互进行了彻底的思考。

由此,列出该页的控制器中需要哪些服务器端操作:

  • 同意URL
  • 收到/邮寄了吗?
  • 是AJAX吗?
  • 无论它返回页面、部分HTML片段还是JSON。
  • 每种类型的参数名称和数据类型

2)后端开发人员创建控制器,根据商定的设计公开操作。CSHTML现在将是存根,不会返回任何内容。

3)前端开发人员创建HTML/javascript来使用这些内容。

他们将能够将ajax操作指向控制器,但是他们需要模拟返回的内容,因为控制器还不知道应该返回什么HTML。

4)前端devs提供HTML到后端devs,以便将动作/部分视图返回HTML或HTML片段。

问题是,您将不断地遍历前端开发,将HTML提供给后端开发人员,以便将返回HTML的动作和返回部分HTML片段(PartialView)的AJAX操作合并到MVC项目中。

它导致了一个非常不敏捷的过程。

您将无法利用MVC的许多框架,这些框架假设您使用的是Razor视图/HTML帮助器。许多与MVC很好地集成的压缩/捆绑javascript/less/css的框架都是不可行的。您仍然可以这样做,但您将有一个不那么顺利的工作流程,并将涉及到更多的黑客在一起。

我想指出,几乎所有的javascript框架都在CSHTML中工作得很好。从客户端的角度来看,MVC/CSHTML并没有引入任何阻碍您构建非常交互式页面的奇怪之处。您可以构建一个纯HTML和javascript的CSHTML页面,并对控制器进行AJAX调用,但是尝试在MVC项目之外使用它会削弱开发工作流程。设计和实现交互式页面需要考虑服务器端的操作是如何实现的。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28838246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档