最近我转向mvc 4,我想知道是否有办法在开发过程中加快这些“更改逗号和更新浏览器以查看它是否有效”的情况。
经过十多年的职业规划,我养成了一些习惯。首先,我主要使用了asp.net网站项目,webforms,它允许我更改代码隐藏、ctrl+s、alt到浏览器、点击f5并查看结果。有时,但并不总是,它会回收应用程序,破坏我的会话,并发送回登录页面。
通过做mvc 4项目来学习,我对编译周期有点失望--我想主要是因为这不是我习惯的。
例如,假设我们正在编写一个Action来处理文件的移动和复制。
string rootpath = HostingEnvironment.MapPath("~/uploads");
string targetpath = HostingEnvironment.MapPath(Path.Combine(rootpath, TargetDir.Substring(TargetDir.LastIndexOf("/"))));这编译得很好,但是当测试时,它会抛出一个异常,因为"rootpath“已经是绝对的,不能再次映射。将代码更改为
string rootpath = HostingEnvironment.MapPath("~/uploads");
string targetpath = Path.Combine(rootpath, TargetDir.Substring(TargetDir.LastIndexOf("/")));还编译得很好,而且很可能实际工作。然而,你有一个这样的“我在写什么”的时刻,并将它改变为
string rootpath = HostingEnvironment.MapPath("~/uploads");
string targetpath = Path.Combine(rootpath, Path.GetDirectoryName(TargetDir));现在一切都很好。
与开发网站项目相比,代码更改、等待编译、刷新浏览器、登录、测试功能(和重复)的步骤似乎比以前要花费更长的时间。有没有任何方法来加速这些类型的试错情况?还是我做错了?
发布于 2013-10-13 09:08:52
我建议一种完全不同的方法。使用单元测试。
MVC的最大优点是,基本上所有代码都可以进行单元测试(控制器、模型、.)。这样,在每次更改时,您只需运行一次或一组单元测试(键盘快捷方式,如Ctrl+R、Ctrl+L或类似的关键字是您最大速度的最好朋友:-)。
只有在最后,您才会运行完整的项目来查看最终的输出。
当然,除了加快开发/调试时间之外,您还将受益于一整套测试,这些测试在开发过程中非常有用(可以更好地设计代码)和回归测试。
https://stackoverflow.com/questions/19343465
复制相似问题