Tag: asp.net

如何将PDF返回到MVC中的浏览器?

我有iTextSharp的这个演示代码 Document document = new Document(); try { PdfWriter.GetInstance(document, new FileStream("Chap0101.pdf", FileMode.Create)); document.Open(); document.Add(new Paragraph("Hello World")); } catch (DocumentException de) { Console.Error.WriteLine(de.Message); } catch (IOException ioe) { Console.Error.WriteLine(ioe.Message); } document.Close(); 如何让控制器将pdf文档返回给浏览器? 编辑: 运行此代码确实打开Acrobat,但出现错误消息“文件已损坏,无法修复” public FileStreamResult pdf() { MemoryStream m = new MemoryStream(); Document document = new Document(); PdfWriter.GetInstance(document, m); document.Open(); document.Add(new Paragraph("Hello World")); document.Add(new Paragraph(DateTime.Now.ToString())); […]

设置Response.StatusCode时IIS7重写customErrors?

这里有一个奇怪的问题。 大家都知道,如果你使用web.config的customErrors部分来创build一个自定义的错误页面,那么你应该设置你的Response.StatusCode为任何适当的。 例如,如果我创build一个自定义404页面并将其命名为404.aspx,则可以在内容中放置<% Response.StatusCode = 404 %> ,以使其具有一个真实的404状态标题。 跟我到目前为止? 好。 现在尝试在IIS7上执行此操作。 这段时间我无法工作。 如果Response.StatusCode在自定义错误页面中设置,IIS7似乎完全覆盖自定义错误页面,并显示自己的状态页面(如果您有一个configuration。) 有没有其他人看到这种行为,也可能知道如何解决它? 它在IIS6下工作,所以我不知道为什么事情会改变。 注意:这与ASP.NET自定义404返回200 OK中的问题不一样, 而不是找不到404

如何获取Active Directory中的用户组? (c#,asp.net)

我使用此代码来获取当前用户的组。 但我想手动给用户,然后得到他的团体。 我该怎么做? using System.Security.Principal; public ArrayList Groups() { ArrayList groups = new ArrayList(); foreach (IdentityReference group in System.Web.HttpContext.Current.Request.LogonUserIdentity.Groups) { groups.Add(group.Translate(typeof(NTAccount)).ToString()); } return groups; }

IE10用户代理导致ASP.Net不发回Set-Cookie(IE10不设置cookie)

概要 使用IE 10时,ASP.Net不会发送Set-Cookie标头。例如,当使用Forms Authentication时,您无法使用IE10login到ASP.Net站点。 详情 我们目前正在testing其中一个针对IE 10的旧版networking应用[Preview 2]。 当尝试使用Forms Authentication进行login时,如果用户代理是IE 10的用户代理,我们不会在响应中获得Set-Cookie标头。我们已经尝试使用空白.Net 2和.Net 4站点。 因为我们不能/不会相信,所以我们甚至通过telnet手动运行了后续的HTTP请求 – 在使用所有常用工具之后 – 得到了相同的响应。 GET http://test.ourdomain.co.uk/ HTTP/1.1 Accept: */* Host: test.ourdomain.co.uk User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0) Content-Length: 0 上面的HTTP请求在响应中不返回Set-Cookie 。 然而,如果我们只是简单地将用户代理改成Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/6.0) 其他人可以复制这个吗? 除了影响非标准URL模式的问题之外,我找不到IE10 Cookie的任何已知问题。 修复 在devio发布原始答案后,解决方法是, nullptr确认现在有一个修补程序 。 http://support.microsoft.com/kb/2600088 我已经提出了主要问题的修补程序,因为它只是更便于将来参考,但请投票提出用户。

我怎样才能在IIS7工作中获得gzip压缩?

我已经为IIS7安装了静态和dynamic压缩,并在我的应用程序Virtual Folder级别设置了两个web.config值。 据我了解,我不需要在服务器或站点级别启用压缩,我可以使用我的web.config文件在每个文件夹的基础上进行pipe理。 我在我的.config文件中有两个设置,我已经设置为我的应用程序自定义gzip: <httpCompression dynamicCompressionDisableCpuUsage="90" dynamicCompressionEnableCpuUsage="0"> <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll" /> <dynamicTypes> <remove mimeType="*/*"/> <add mimeType="*/*" enabled="true" /> </dynamicTypes> </httpCompression> <urlCompression doDynamicCompression="true" dynamicCompressionBeforeCache="true" /> 但是,当我运行应用程序时,我可以清楚地看到gzip没有被使用,因为我的页面大小是一样的。 我也使用YSlow的FireFox,这也确认我的网页不被gziped。 我在这里错过了什么? 在IIS6中,指定文件types是简单的事情,并且在0-10之间设置压缩级别。 我没有看到需要logging指定文件types或压缩级别,因为默认似乎覆盖文件types,我没有看到任何地方的水平。

用EQATEC Profiler分析ASP.NET网站

我正在寻找一个免费的ASP.NET分析器,我偶然发现了EQATEC Profiler for .NET ,但是我找不到任何有关如何使用它来分析ASP.NET项目的说明。 请发布分步说明或具有足够信息的链接。 我正在使用Visual Studio 2008 Professional和.NET 3.5。

响应内容types为CSV

我需要在HTTP响应中发送一个CSV文件。 如何将输出响应设置为CSV格式? 这不工作: Response.ContentType = "application/CSV";

Facebook连接和ASP.NET

我在这里的authentication概述的第8步: http : //wiki.developers.facebook.com/index.php/How_Connect_Authentication_Works 特别是,用户已经通过Facebook连接loginFacebook,他们的networking会话已经创build。 我如何使用Facebook开发者工具包v2.0(从清晰)来检索有关用户的信息。 例如,我想获取用户的名字和姓氏。 文档中的示例是面向Facebook应用程序的,但事实并非如此。 更新 Facebook最近发布了Graph API。 除非您正在维护使用Facebook Connect的应用程序,否则应该查看最新的API: http : //developers.facebook.com/docs/

将数据传递给ASP.NET MVC中的主页面

什么是你的方式传递数据主页(使用ASP.NET MVC),而不会违反MVC规则? 我个人更喜欢编写抽象的控制器(基本控制器)或传递给所有视图的基类。

强制下载Web服务器上的文件 – ASP .NET C#

当用户单击基于ASP .NET(C#)的Web应用程序中的button时,我需要强制开始下载.sql文件。 如在单击该button时,另存为对话框应在客户端打开… 我如何做到这一点? 编辑 这是我正在使用的代码 string sql = ""; using (System.IO.StreamReader rdr = System.IO.File.OpenText(fileName)) { sql = rdr.ReadToEnd(); } Response.ContentType = "text/plain"; Response.AddHeader("Content-Disposition", "attachment; filename=Backup.sql"); Response.Write(sql); Response.End(); 这是我得到的错误… 替代文字http://img40.imageshack.us/img40/2103/erroro.gif 怎么了?