草庐IT

lib.web.mvc

全部标签

c# - ASP.NET MVC 3 自定义 RouteBase 和 OutputCache

我的自定义RouteBase实现和[OutputCache]有问题。我们有一个CMS,其中url被映射到某些内容页面。每种类型的内容页面都由不同的Controller(和不同的View)处理。这些url是完全免费的,我们需要不同的Controller,因此“catchall”路由不可用。所以我们构建了一个自定义的RouteBase实现,它调用数据库来查找所有的url。数据库知道要使用哪个Controller和Action(基于内容页面类型)。这很好用。但是,将此与[OutputCache]属性结合使用,输出缓存不起作用(页面仍然有效)。我们确保[OutputCache]在我们的“正常”

c# - ASP.NET MVC 5 异步上下文管理

我有一个相当标准的MVC5应用程序,由存储库层、服务层和Controller层组成。为了保持每一层的解耦和可测试性,我使用Ninject进行依赖注入(inject)。为了复习新技能,我决定在服务和Controller方法的IO绑定(bind)操作上使用带有异步/等待的新任务Controller操作。通常我只是像这样使用InRequestScope绑定(bind)kernel.Bind().To().InRequestScope();一般来说,这现在工作正常,但是如果我选择调试我的应用程序,或者将多个被跟踪的EntityFramework对象连接在一起并保存,我发现上下文已被处理或者我遇

c# - 在多线程环境中调用具有不同证书类型的多个 Web 服务

我的问题:我有一个网络应用程序(.NET4.5.1)对外部网络服务进行多次调用。一些服务仅通过SSL进行通信,而其他服务仅通过TSL进行通信。我知道,出于某种原因,ServicePointManager.SecurityProtocol可以为appdomin静态全局设置(我不知道为什么它是全局的),但是由于可以同时对不同线程中的不同外部服务进行多次调用-我不能只为每次服务调用更改应用程序域的SecurityProtcol。问题:我应该如何在多线程网络应用程序环境中处理这个问题?我是否应该在可以设置SecurityProtocol的不同应用程序域中生成服务调用?如果是这样-我应该怎么做?

c# - ASP.NET MVC 应用程序中的非托管 DLL 导致应用程序池在 IIS 服务器上停止

我的ASP.NETMVC应用程序使用用C++编写的非托管外部DLL。该网站在VisualStudio中运行良好,可以正确定位和访问外部DLL。但是,当网站在本地网络服务器(运行IIS7.5)而不是VisualStudioIISExpress上发布时,我收到以下错误:HTTPError503.Theserviceisunavailable.外部DLL位于网站的bin目录中。在查看IIS日志时,我注意到每次调用dll时defaultapppool都会停止。HTTP/1.1GET/Bio/Select/35031DisabledDefaultAppPool我尝试了以下方法:我将DLL放在Sy

c# - 我可以在 MVC 站点下的虚拟目录中拥有传统的 ASP.NET Web 应用程序吗?

这是多年来一直有效的方案。我在(比如说)www.MySite.co.uk有一个父asp.netWeb应用程序,在它下面我有多个子(客户端)站点在虚拟目录中,例如www.MySite.co.uk/Client1等。所有站点(父目录和子虚拟目录)都是使用.NET4.5的传统asp.netWeb表单应用程序,并且一切正常。昨天,我将我的父站点更新为一个asp.netMVC5Web应用程序(由自由职业者为我开发)。我只更新了父站点,它破坏了我所有的子站点。作为对此的紧急修复,我在我的父MVC站点中重命名了web.config文件,显然这已经破坏了我的父站点,但至少客户端(子)站点再次工作。根应

c# - 如何准确测量 Azure Web 应用程序中的 "data out"?

我在Azure中有一个网络应用程序,每月大约有10万访问者,每次session的页面浏览量不到2(纯SEO访问者)。我刚刚研究了我们的Azure账单,震惊地发现上个月我们输出了3.41TB的数据。太字节。这完全没有意义。我们的平均页面大小小于3mb(很多,但不是数学上说的30mb)。实际上,输出的总数据应该是:3431000(mb)/150000(sessions)=23mbprsession,这绝对是假的。Pingdom等服务的结果说:(似乎Stack.Imgur已关闭-临时链接:http://prntscr.com/gvzoaz)我的图表看起来像这样,它不是刚出现的东西。我已经有一

c# - 使用 WS-Security web 服务的 WCF 客户端

我设法通过WS-Security1.1协议(protocol)使用基于Java的Web服务(第三方)。Web服务只需通过x509证书签名,无需加密。但是我收到了这个错误:Thesignatureconfirmationelementscannotoccuraftertheprimarysignature.捕获的服务器响应包如下所示:.........CN=COMODORSAOrganizationValidationSecureServerCA,O=COMODOCALimited,L=Salford,ST=GreaterManchester,C=GB...7Elcódigodebanc

c# - ASP.NET MVC4 和 Web API 身份验证 + 授权(Windows 8 和 Web)

我使用简单的成员资格数据库创建了一个ASP.NETMVC4InternetWeb应用程序来存储用户、角色和配置文件。在我的应用程序中,我创建了一个WebAPIController,它将响应http://127.0.0.1/api/users并且此调用将返回存储在数据库中的所有用户列表JSON。UsersController装饰有[Authorize]属性,因此对http://127.0.0.1/api/users的任何调用都有进行身份验证。在主页上我有一个按钮,一旦按下,就会执行jQueryajaxget请求,并将显示由WebAPI(json)返回的用户列表。如果我登录并按下按钮,一切

c# - 自托管 ASP.NET Web API 和自托管 SignalR 一起 Windows 服务应用程序

我想构建一个Windows服务,通过自托管ASP.NETWebAPI提供一些服务。另外,我想通过自托管SignalR通知客户一些变化。我认为ASP.NETSignalR将是通知中心的完美解决方案。当我同时运行这两项服务时,它们无法协同工作。如果我删除SignalR,自托管API将开始完美运行。反之亦然:删除Windows服务,SignalR将完美运行。我不确定我的问题是什么,是否可以同时为asp.netWebAPI和SignalR自托管Windows服务?我在相同和不同的端口上都尝试过,但它不起作用。另一个问题,是否可以将两者都放在同一个端口上?我安装的包:Microsoft.AspN

c# - 如何在mvc中部分缓存用户详细信息

在每个页面的页眉中,我都显示了用户名和用户积分。这是从部分中提取的(从数据库中获取点)。我怎样才能缓存这个部分,这样我就可以避免在每个页面上检查数据库中的用户点数,并且在24小时后它可以再次查看(缓存过期)。此外,如果用户注销并且其他人登录,它将显示新的用户名和积分(不是以前缓存的)。 最佳答案 这是特定于用户的,因此我会将其存储在持久性cookie中。因此,当用户进行身份验证时,您可以查询数据库以获取所需的信息并发出一个将在24小时后过期的持久性cookie。然后在部分中,您将检查cookie是否存在并从此cookie中获取必要的