我正在使用IIS Express/Web Matrix处理PHP应用程序,它给了我"友好"错误页面而不是实际错误.如何配置我的网站或IIS快递给我实际的错误?
我在viewmodel中有这个属性.
public bool IsKWH
{
get { return _isKwh; }
set
{
if (value.Equals(_isKwh)) return;
_isKwh = value;
NotifyOfPropertyChange(() => IsKWH);
}
}
Run Code Online (Sandbox Code Playgroud)
关闭我的应用程序时,有时候(10次中有~10次)我在NotifyOfPropertyChange中收到以下错误:
WindowsBase.dll中出现"System.Threading.Tasks.TaskCanceledException"类型的异常,但未在用户代码中处理
附加信息:任务已取消.
我在我的视图模型中有一个System.Threading.Timer,它正在进行webservice调用以更新这个和许多其他属性.
我正在使用Caliburn.Micro,当我从1.5更新到2.0时,它似乎已经开始发生.
反正有没有阻止这种错误发生?
我遇到Html.ActionLink的问题没有给我我期待的链接.
这是我的路线:
routes.MapRoute(
"KnownCustomer", // Route name
"{controller}/{action}/{custId}/{projId}", // URL with parameters
new { controller = "Home", action = "Index" }, // Parameter defaults
new { custId = @"\d+", projId = @"\d+" }
);
Run Code Online (Sandbox Code Playgroud)
这是我对Html.ActionLink()的调用"
@Html.ActionLink("Create New", "Create", "Conflict")
Run Code Online (Sandbox Code Playgroud)
以下是ActionLink存在的页面的URL: http:// localhost:1283/Conflict/Index/1200/300 以下是对上述Html.ActionLink()的调用结果 http:// localhost:1283 /冲突/创建
呼叫不应该包含其他路由参数吗?我期待的是 http:// localhost:1283/Conflict/Create/1200/300
我是否需要将custId和projId传递给View并使用重载手动提供值?
我试图使用正则表达式将句子/短语分成单词.
var phrase = "This isn't a test.";
var words = Regex.Split(phrase, @"\W+").ToList();
Run Code Online (Sandbox Code Playgroud)
单词包含"This","isn","t","a","test"
显然它正在捡起撇号并分裂.我可以改变这种行为吗?它还需要多语言支持各种语言(西班牙语,法语,俄语,韩语等).
我需要将这些单词传递给拼写检查程序.特别是Nhunspell.
return (from word in words let correct = _engine[langId].Spell(word) where !correct select word).ToList();
Run Code Online (Sandbox Code Playgroud) 我有一个简单的数据控件定义如下
<DataGrid x:Name="ScheduleDataGrid" AutoGenerateColumns="False" CanUserAddRows="True" CanUserDeleteRows="True" Margin="5" ItemsSource="{Binding ScheduleItems}">
<DataGrid.Columns>
<DataGridTextColumn...></DataGridTextColumn>
....
<DataGridTextColumn...></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
Run Code Online (Sandbox Code Playgroud)
我指定了CanUserAddRows ="True".正如所宣传的那样,这会在网格底部放置一个空行,供用户添加新行.
有没有办法独立于网格的其余部分设置新项目占位符的样式?
我使用MVC3和Razor视图引擎创建了一个网站.我想要做的是获取生成的HTML并将其存储在流或字符串中,以便我可以将其写入文件而不是将其写入浏览器.
我需要做的是获取生成的HTML并将其转换为PDF并将PDF作为报告形式提供给用户.我已经解决了它的部分问题,我只是无法弄清楚将HTML转换为某种变量的最佳方法.
编辑 - 我最终走向了一个不同的方向,想分享结果.我创建了一个使用WKHTMLTOPDF项目将流转换为PDF的属性.现在我所做的就是为动作添加一个属性,而不是将HTML呈现给浏览器,它会弹出一个另存为对话框.
public class PdfInterceptAttribute : ActionFilterAttribute
{
public override void OnResultExecuted(ResultExecutedContext filterContext)
{
var viewResult = filterContext.Result as ViewResult;
var workingDir = ConfigurationManager.AppSettings["PdfWorkingPath"];
var fileName = workingDir + @"\" + Guid.NewGuid() + ".pdf";
if (viewResult != null)
{
var view = viewResult.View;
var writer = new StringWriter();
var viewContext = new ViewContext(filterContext.Controller.ControllerContext, view,
viewResult.ViewData, viewResult.TempData, writer);
view.Render(viewContext, writer);
HtmlToPdf(new StringBuilder(writer.ToString()), fileName);
filterContext.HttpContext.Response.Clear();
var pdfByte = File.ReadAllBytes(fileName);
filterContext.HttpContext.Response.ContentType = "application/pdf";
filterContext.HttpContext.Response.AddHeader("Content-Disposition", "attachment; filename=Report.pdf");
filterContext.HttpContext.Response.BinaryWrite(pdfByte);
filterContext.HttpContext.Response.End();
}
base.OnResultExecuted(filterContext); …Run Code Online (Sandbox Code Playgroud) asp.net-mvc ×2
c# ×2
wpf ×2
iis ×1
php ×1
razor ×1
regex ×1
webmatrix ×1
wkhtmltopdf ×1
wpfdatagrid ×1
xaml ×1