Tag: asp.net

无法将图像渲染到HttpContext.Response.OutputStream

基本上我试图在ASP.NET处理程序中呈现一个简单的图像: public void ProcessRequest (HttpContext context) { Bitmap image = new Bitmap(16, 16); Graphics graph = Graphics.FromImage(image); graph.FillEllipse(Brushes.Green, 0, 0, 16, 16); context.Response.ContentType = “image/png”; image.Save(context.Response.OutputStream, ImageFormat.Png); } 但我得到以下exception: System.Runtime.InteropServices.ExternalException: A generic error occurred in GDI+. at System.Drawing.Image.Save(Stream stream, ImageCodecInfo encoder, EncoderParameters encoderParams) 解决方案是使用它而不是将图像写入OutputStream: MemoryStream temp = new MemoryStream(); image.Save(temp, ImageFormat.Png); byte[] buffer = temp.GetBuffer(); […]

使用ASP.NET MVC OutputCache同时根据用户是否经过身份validation来更改View内容

我正在构建一个ASP.NET MVC 2站点,我正在大量使用OutputCache参数。 但是,我有一个问题:使用此类缓存可能会干扰身份validation 。 在我的所有页面上,我显示用户是否已登录。 此外,在我的一些视图中,我根据用户角色进行过滤,以确定是否显示某些页面内容(例如,我的某个页面上的“ 编辑”链接仅显示给主持人或管理员角色的用户) 。 使用OutputCache是​​否会干扰我的视图的动态更改? 如果是这样,我如何在不消除缓存的情况下解决此问题?

从C#应用程序调用ASP.net Web服务

我有个问题。 如何调用Web服务并从C#桌面应用程序获取结果。 我正在制作一个桌面应用程序,我希望它能够连接到我的在线ASP.net Web服务。 这怎么可能?

SagePay .Net Integration Kit – 返回3dSecureStatus的NOTAVAILABLE值时出错

我使用表单集成实现了SagePay付款。 我的实现是基于SagePay提供的.Net集成工具包,一切都很好。 最近我们启用了3D Secure,当3DSecureStatus的值返回值NOTAVAILABLE时遇到了问题。 看起来当返回NOTAVAILABLE值时,在程序集SagePay.IntegrationKit.DotNet.dll的SagePayIntegration类的ConvertToSagePayMessage()方法调用中会抛出错误。 特别是,将值解析为ThreeDSecureStatus枚举时会发生此错误。 此枚举没有NOTAVAILABLE可以解析的值,因此错误。 我暂时解决了这个问题,现在才开始工作。 此修复程序将NOTAVAILABLE值替换为NONE ,因此现在解析为有效的枚举值。 这是在调用ConvertToSagePayMessage()之前完成的 cryptDecoded = cryptDecoded.Replace(“3DSecureStatus=NOTAVAILABLE”, “3DSecureStatus=NONE”); 我只是想知道为什么ThreeDSecureStatus枚举没有ThreeDSecureStatus的值,因为NOTAVAILABLE是它预期返回的值之一,这在SagePay提供的表单集成协议指南中有所概述。 并希望实现更强大的修复,而不是字符串替换。

让asp.net在会话中存储视图状态而不是增加html

我试图让asp.net在会话中存储viewstate,而不是填充html。 现在我已经读过asp.net附带了SessionPageStatePersister,可以使用它来代替默认的HiddenFieldPageStatePersister来执行此操作。 我想知道我是怎么放弃它的? 这就是我到目前为止:我想我需要创建一个PageAdapter,它从GetStatePersister方法返回一个SessionPageStatePersister,并以某种方式让页面使用这个pageadapter。 但Page.PageAdapter只有一个getter,所以我不确定你是如何设置它的。 请参阅此处的“备注”标题: http : //msdn.microsoft.com/en-us/library/system.web.ui.hiddenfieldpagestatepersister.aspx 谢谢!

命名空间在.net中可以拥有的类数是否有限制?

命名空间在.net中可以拥有的类数是否有限制? 还有什么是命名空间中应该有的类的推荐数量?

w3wp.exe中发生未处理的win32exception

尝试加载ASP.NET MVC网站时出现以下exception: w3wp.exe中0x07070a91处的未处理exception:0xC0000005:访问冲突读取位置0x00000000。 Visual Studio实时调试器打开,我在调试器中看到的唯一信息是: 调用堆栈位置: MSVBVM60.DLL!06c00a91() 该网站使用了一些COM对象,一切正常,直到上周。 这个问题突然出现了。 这是Windows事件查看器的错误日志: 错误应用程序名称:w3wp.exe,版本:7.5.7601.17514,时间戳:0x4ce7a5f8 错误模块名称:MSVBVM60.DLL,版本:6.0.98.15,时间戳:0x4a5bda6c exception代码:0xc0000005 故障偏移:0x00030a91 错误进程id:0x1a0 错误应用程序启动时间:0x01cd31fcb47f66d8 错误的应用程序路径:C:\ Windows \ SysWOW64 \ inetsrv \ w3wp.exe 错误模块路径:C:\ Windows \ system32 \ MSVBVM60.DLL 报告ID:f5db0ae3-9def-11e1-ad79-005056c00008 您有什么建议可以帮助解决这个问题吗? 编辑:我设法解决了问题,现在一切正常。 该解决方案涉及调整自定义dll所需的一些注册表设置,以便正常运行。 所以这个问题实际上并没有突然出现,我只是没有意识到一些注册表值被修改,导致一个com dll崩溃。

是否可以在.NET 4中动态创建路由?

在我们的应用程序中,我们使用新的.NET 4路由系统将某些请求路由到站点的其他部分。 我们只允许在晚上发布我们的网站代码,这意味着我们必须迟到工作以发布任何代码更改。 我们经常需要创建自定义路由以支持旧内容的旧链接并将其路由到新内容。 这些通常是需要的,因为我们的路由是在编译的global.asax中定义的,当我们立即需要这些,但是不能进行代码推送时,我们会陷入僵局。 有没有办法我们可以在某种配置文件中定义路由并让网站以编程方式读取它们而无需重新启动应用程序?

如何自定义OAuthAuthorizationServerProvider的错误消息?

我们使用OAuthAuthorizationServerProvider类在我们的ASP.NET Web Api应用程序中进行授权。 如果在GrantResourceOwnerCredentials提供的用户名和密码无效,则调用 context.SetError( “invalid_grant”, “The user name or password is incorrect.” ); 生成以下Json结果: { “error”: “invalid_grant”, “error_description”: “The user name or password is incorrect.” } 有没有办法自定义此错误结果? 我想使它与API的其他部分中使用的默认错误消息格式一致: { “message”: “Some error occurred.” } 这是否可以通过OAuthAuthorizationServerProvider实现?

如何在运行时动态突出显示或更改标签中某些单词的颜色?

我有一个包含一些文字的标签,我想要突出显示或更改标签文本中某些单词的颜色,而不是所有单词。 它必须是动态的。 有什么建议? 它适用于带有ASP.NET的c#,位于sharepoint中的webpart中的用户控件中