Stackoverflow用户,如何避免使用大型方法创建大型类.截止日期紧张时,你最终会试图将事情放在一起,最终成为一个需要重构的混乱.
对我来说,唯一的方法是从测试驱动开发开始,这有助于良好的类设计和SRP(单一责任原则).
我也看到开发人员只需双击控件并在被触发的事件方法中逐行输入.
你有什么建议?
我的应用程序已经使用MVC 3,.net实现.我想点击一个按钮生成一个excel文件.使用Ajax调用控制器操作.我的主要问题是:在文件生成期间,我试图在屏幕上显示图像,让用户知道进入操作.我可以很好地显示图像,但操作完成后我无法隐藏它.我使用的代码是:
Javascript代码:
$("input.DownloadExcelReport").click(function (e) {
e.preventDefault();
var parameter = -- code to fetch parameter value;
var outputViewUrl = (the url is created here);
showLoading(); -- This function displays the image
window.location.href = outputViewUrl;
});
Run Code Online (Sandbox Code Playgroud)
控制器动作代码:
public ActionResult DownExcelReportForAssortment(Guid parameter)
{
try
{
//the contents for the file generation are fetched here..
// Write contents to excel file
if (memoryStream != null)
{
var documentName = "Report.xls";
byte[] byteArrary = memoryStream.ToArray();
return File(byteArrary, "application/vnd.ms-excel", documentName);
}
}
catch (Exception ex) …
Run Code Online (Sandbox Code Playgroud) 我目前有一个场景,可以在几秒钟内完成1000个动作,我需要将所有这些动作存储在数据库中.
我目前所做的是保留一个空闲计时器,一旦这个计时器到达预定义的时间,我就采取缓存的操作(自上次提交后的操作 - 这只是一个简单的列表)并将这些操作提交给数据库.
用户界面需要尽可能快地响应(呃?).
除了将数据库记录推送到单独的线程之外,还有其他任何关于性能的建议,任何人都可以帮助我吗?
我真的开始享受单元测试,并向单元测试大师提出以下问题.
比如说我有以下课程
public class FileMapper
{
public Dictionary<string, string> ReadFile(string filename, string delimeter){}
}
Run Code Online (Sandbox Code Playgroud)
在我的情况下,你们通常如何对Parser或ReadFile方法进行单元测试?