草庐IT

asp-format

全部标签

c# - ASP.NET 应用程序中搜索结果的缓存体系结构

在ASP.NET系统中缓存昂贵搜索结果的好的设计是什么?任何想法都将受到欢迎......特别是那些不需要我们自己发明复杂基础设施的想法。以下是与问题相关的一些一般要求:每个搜索结果可以产生从零到几百条结果记录执行每个搜索都相对昂贵且耗时(在数据库中5-15秒)结果在客户端显示之前必须分页以避免用户信息过载用户希望能够在返回的结果中进行排序、过滤和搜索用户希望能够在搜索结果中快速切换页面用户希望能够在任意数量的页面上选择多个项目(通过复选框)用户希望在搜索完成后获得相对快速的性能我看到了一些关于在哪里以及如何实现缓存的可能选项:1。在服务器上缓存(在session或应用程序缓存中),使用

c# - System.Web.HttpException 文件不存在 - 页面加载正常 (ASP.NET)

我正在使用Log4Net并在我的ASP.NET应用程序每次抛出错误时进行记录:protectedvoidApplication_Error(objectsender,EventArgse){Exceptionex=Server.GetLastError();Log.Error("Anerroroccurred",ex);}唉,每次我访问我的应用程序的页面时,都会捕获到System.Web.HttpException,“文件不存在”。这是堆栈跟踪:beiSystem.Web.StaticFileHandler.GetFileInfo(StringvirtualPathWithPathIn

c# - ASP.NET Odata Web API 的错误处理

我很想知道在ODataController中引发异常所遵循的最佳实践是什么。如果您在方法中引发异常,默认情况下它会转换为响应代码500,并且内容包含有关错误的详细信息。我想明确响应代码,并在key无效的情况下发送400。例如:如果输入请求有一个无效的键想返回400的HttpResponseCode并且内容应该有类似于引发异常的错误详细信息。非常感谢您的意见 最佳答案 OData(至少从v3开始)使用specificjson表示错误:{"error":{"code":"Acustomerrorcode","message":{"lan

c# - 如何在 ASP.NET MVC 站点中实现速率限制?

我正在构建一个ASP.NETMVC站点,我想在其中限制经过身份验证的用户使用站点某些功能的频率。虽然我了解速率限制的基本工作原理,但我无法想象如何在不产生主要代码味道的情况下以编程方式实现它。您能否用C#示例代码向我指出一个简单而强大的解决方案来解决此类问题?如果重要的话,所有这些功能目前都表示为仅接受HTTPPOST的操作。我最终可能还想为HTTPGET函数实现速率限制,因此我正在寻找适用于所有此类情况的解决方案。 最佳答案 如果您使用的是IIS7,您可以查看DynamicIPRestrictionsExtension.另一种可能

c# - ASP.NET Web API 和 [Serializable] 类

我有一个标有[Serializable]的类。当我从WebAPI返回它时,字段名称都很奇怪。通常返回的JSON是[{"OrderId":797...使用[Serializable]时返回的JSON[{"k__BackingField":797...我不想将其标记为可序列化以使用BinaryFormatter进行缓存。除了编写自定义序列化程序或制作不可序列化的孪生类并编写猴子代码以在两者之间“转换”之外,还有其他方法吗? 最佳答案 您只需要一行代码就可以让Json.NET再次忽略[Serializable]语义:((DefaultCo

c# - web.config asp.net中的oracle数据库连接

我知道我可以在C#类本身中创建一个连接字符串,但我试图避免这样做。我想在web.config中创建连接,我读到它更安全。尽管如此,我找不到任何指定了以下属性的示例:HostnamePortSIDUsernamePasswordConnectionName有人可以帮忙在webconfig中创建这个吗?我正在连接到Oracle数据库。 最佳答案 这是模板:这是我的一个-减去真实的TNS名称和用户名和密码: 关于c#-web.configasp.net中的oracle数据库连接,我们在Stac

c# - 如何在 ASP.NET Core 1.0 RC2 中将实例注册到 ServiceCollection

我正在将我的Web应用程序从ASP.NETCoreRC1迁移到RC2。在RC2中,IServiceCollection不再有AddInstance方法。如何注册配置?这是在RC1中是如何完成的publicclassStartup{publicIConfigurationConfiguration{get;set;}publicvoidConfigureServices(IServiceCollectionservices){//AddInstancedoesn'texistservices.AddInstance(Configuration);..}} 最佳

C# ASP.NET MVC : When to update LastActivityDate?

我正在使用ASP.NETMVC并创建一个公共(public)网站。我需要跟踪在线用户。我看到在asp.net中执行此操作的标准方法是跟踪LastActivityDate。我的问题是我应该什么时候更新它?如果每次用户点击某处时我都更新它,我会感到性能下降。但是,如果我不这样做,只会四处冲浪的人将被列为离线。在asp.netMVC中执行此操作的最佳方法是什么? 最佳答案 只需在您的母版页底部放置一个ajaxjavascript调用来跟踪它。此时不要担心性能。如果它已经实现并且您发现它是一个问题,那么回过头来寻找更好的解决方案。如此简单的

c# - ASP.NET MVC - HTML.BeginForm 和 SSL

我在ASP.NETMVC2中遇到了一个应该是简单登录表单的问题。基本上我的表单看起来有点像这样:using(Html.BeginForm("LogOn","Account",new{area="Buyers"},FormMethod.Post,new{ID="buyersLogOnForm"}))我在LogOnAction方法上有一个RequiresHTTPS过滤器,但是当它执行时我收到以下消息TherequestedresourcecanonlybeaccessedviaSSL此时唯一可行的解​​决方案是传递一个额外的操作html属性,如下所示:varactionURL="https

c# - 登录后直接从 Websecurity 获取 CurrentUserID (C#/ASP.NET)

我有这个网站(C#/ASP.NET),其中包含一个用户可以注册帐户的表单(它是VS11的默认模板),在填写完所有内容并且用户点击注册后,它会创建帐户并登录用户(效果很好)。完成此步骤后,我想获取分配给他的UserID,但它不起作用。我在那里放置了一个断点以查看“currentuserid”和“WebSecurity.CurrentUserId”的值,但它们只有-1值。下一步是将用户重定向到下一页,并在该页面上使用这些功能。我认为我能够获得UserID,因为用户已经在我在此处提供的代码的第一行中登录。所以我的问题是,为什么它在这里不起作用?我对此很陌生,所以我显然遗漏了一些东西。WebS