我的新项目是我第一次看WPF MVVM和WCF,我喜欢它,但似乎我创建了很多文件,总是在相同的基本设置和结构中.
我想知道是否有人有办法将某种文件夹/项目结构定义为输入并自动创建各种POCO,视图,模型,服务类和接口,或许可以使用某种一致的文件名前缀.
然后开发人员可以进入并切割代码以获取他们的数据.
我看到了这个,这是一个正确的想法:
http://www.codeproject.com/Articles/16515/Creating-a-Custom-Tool-to-Generate-Multiple-Files
一位同事还建议批量文件可能值得调查.对所有想法持开放态度,感谢您的帮助.
更新//
这将在项目创建后进行.因此文件夹和项目已经到位,但您希望为端到端服务调用和演示添加必要的文件.
更新:
为确保将正确的状态代码返回给浏览器,error.aspx具有以下行:
<% Response.StatusCode = 500; %>
Run Code Online (Sandbox Code Playgroud)
删除它会删除不需要的文本,但我想要正确的状态代码,所以我想这是一个新问题......如何!?
设置响应状态代码具有相同的结果:
HttpContext.Current.Response.StatusCode = 500;
Run Code Online (Sandbox Code Playgroud)
将更新问题标题.
PRE-UPDATE:
由于一些遗留代码/配置,我们有一个稍微不寻常的自定义错误页面设置,它处理异常,global.asax并用于Server.Transfer()显示相应的.aspx错误页面,如下所示:
public void Application_Error(object sender, EventArgs e)
{
// abbreviated to clear out logging and some other logic that determines which error page to show
HttpContext.Current.Response.Clear();
HttpContext.Current.Server.ClearError();
var context = HttpContext.Current;
if (context != null)
{
var errorPage = "~/ErrorPages/error.aspx";
context.Server.Transfer(errorPage);
}
}
Run Code Online (Sandbox Code Playgroud)
问题是,当向远程用户显示error.aspx时,页面会附加一条错误消息(以及一个新的开放正文标记...),因此该页面的第一行是无样式的文本说:
Run Code Online (Sandbox Code Playgroud)The page cannot be displayed because an internal server error has occurred.
虽然也许我正在使用Google搜索错误的内容,但它似乎并不是一个记录良好或经常讨论的问题.
欢迎任何想法.error.aspx代码非常通用,但我很乐意发布它是否有帮助 - 请注释.
我有一个带有类型参数的对象 - 调用它Object<T>- 并且需要能够将多个具有不同类型参数的对象添加到列表中,如下所示:
var obj1 = new Object<SomeType>();
var obj2 = new Object<SomeOtherType>();
var list = new List<Object<WhatGoesHere>{ obj1, obj2 };
Run Code Online (Sandbox Code Playgroud)
我知道我可以使用一个接口,如果它只是不同对象的列表,但这似乎不适用于具有不同类型参数的对象列表,所以我有兴趣知道我的选项是什么?
以下代码访问一个辅助方法,该方法创建并返回一个EPPlus ExcelPackage,然后将该包返回到浏览器:
public ActionResult DownloadMatrixExcel(int projectId)
{
try
{
// Get project details
var project = (from p in db.Projects
where p.ProjectId == projectId
select new
{
companyName = p.Company.Name,
projectName = p.Name
}).Single();
// Must append file type to file download responses
var fileName = project.projectName + "-" + project.companyName + "-" + DateTime.Now.ToString("yyyyMMdd", CultureInfo.InvariantCulture) + ".xlsx";
// Configure response
Response.Clear();
Response.BufferOutput = false;
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
Response.AddHeader("content-disposition", "attachment; filename=" + fileName);
// Create and populate excel package
var …Run Code Online (Sandbox Code Playgroud) .net ×1
asp.net-mvc ×1
automation ×1
c# ×1
firefox ×1
global-asax ×1
macros ×1
oop ×1
templates ×1