我希望你能帮我解决下面的问题.
我在IIS7上使用ASP.NET MVC 3,并希望我的应用程序支持带点的用户名.
这就是我的Global.asax的样子:(http:// localhost / {username})
routes.MapRoute(
"UserList",
"{username}",
new { controller = "Home", action = "ListAll" }
);
Run Code Online (Sandbox Code Playgroud)
当我访问其他页面时,应用程序工作,例如http://localhost/john.lee/details等.
但主用户页面不起作用,我希望该应用程序像支持http://www.facebook.com/john.lee的 Facebook一样工作.
我使用下面的代码,它根本不适合我:
<httpRuntime relaxedUrlToFileSystemMapping="true" />
Run Code Online (Sandbox Code Playgroud)
我能够使用下面的代码并让应用程序接受点,但我绝对不希望使用下面的代码有很多不同的原因,请告诉我有一种方法来克服这个问题.
<modules runAllManagedModulesForAllRequests="false" />
Run Code Online (Sandbox Code Playgroud) 我想将netTcpBinding用于我目前在IIS7中托管的WCF应用程序,这意味着将其配置为使用WAS.这是相当直接的,但是,我的应用程序以前在global.asax文件中使用了Application_Start事件.我不需要访问httpContext(我理解IIS7中已经删除了访问权限),但我还是想挂钩启动或初始化方法?
在WAS中托管与IIS7相关的应用程序时是否存在等价物?
使用经典模式不是一个选项(我再次对httpcontext不感兴趣,如果使用http绑定,这似乎只能起作用) - 我已经看到了一个将静态类插入app_code文件夹的示例,该文件夹看起来像一个可怕的黑客.
我遇到一个错误,我现在无法解决一段时间了.我想知道是否有人可以帮助确定此错误的原因?我是asp/asax的新手.经过一些研究,我认为我得到的错误是由于Web应用程序试图使用过时的代码.我正在考虑使用Visual Studio和/或整个项目重建c#文件.但是,我对C#和asp完全不熟悉,并且想知道可以给我一些建议,如果这可以解决问题和/或是否有可能的替代解决方案.
错误信息
Parser Error Message: Could not load type 'Inventory1.Global'.
Source Error: <%@ Application Codebehind="Global.asax.cs" Inherits="Inventory1.Global" %>
Run Code Online (Sandbox Code Playgroud)
整个 Global.asax内容:
<%@ Application Codebehind="Global.asax.cs" Inherits="Inventory1.Global" %>
Run Code Online (Sandbox Code Playgroud) 我有这段代码来处理我的global.asax.cs文件中的HttpRequestValidationException.
protected void Application_Error(object sender, EventArgs e)
{
var context = HttpContext.Current;
var exception = context.Server.GetLastError();
if (exception is HttpRequestValidationException)
{
Response.Clear();
Response.StatusCode = 200;
Response.Write(@"<html><head></head><body>hello</body></html>");
Response.End();
return;
}
}
Run Code Online (Sandbox Code Playgroud)
如果我调试我的webapplication,它的工作完美.但是,当我把它放在我们的生产服务器上时,服务器忽略它并生成" 从客户端检测到一个有潜在危险的request.form值 " - 错误页面.我不知道究竟发生了什么......如果有人知道问题是什么,或者我做错了什么......?
另外,我不想在web.config中将validaterequest设置为false.
服务器使用IIS7.5,我使用的是asp.net 3.5.
谢谢,布鲁诺
在我安装的模板中,我没有全局应用程序类代码隐藏.我所拥有的只是Global.asax.我觉得使用Global.asax.cs更舒服.
我有这个代码:
using System.Configuration;
void Application_Error(object sender, EventArgs e)
{
Exception ex = Server.GetLastError().GetBaseException();
string ErrorMessage = ex.Message;
string StackTrace = ex.StackTrace;
string ExceptionType = ex.GetType().FullName;
string UserId = Getloggedinuser();
string WebErrorSendEmail =
ConfigurationManager.AppSettings["WebErrorSendEmail"];
// save the exception in DB
LogStuffInDbAndSendEmailFromDb();
}
Run Code Online (Sandbox Code Playgroud)
这是(大部分)我的代码.在一小部分情况下,我没有得到足够的信息.我不知道异常起源于哪个页面.
如何获取与异常源自的页面相关的任何信息?
以下是最短消息的示例:
Base-64 char数组的长度无效.
在System.Web上的System.Web.UI.ObjectState.mat.UI.Object.UI.ObjectState.Formatter. System.Web.UI.HiddenFieldPageStatePersister.Load()中的.UI.Util.DeserializeWithAssert(IStateFormatter formatter,String serializedState)
我的global.asax似乎没有解雇.我有:
void Application_Error(object sender, EventArgs e)
{
// Code that runs when an unhandled error occurs
Server.Transfer("~/ExceptionFormView.aspx");
}
Run Code Online (Sandbox Code Playgroud)
In my web.config, I don't have anything like CustomErrors. As I want everything to be handled by Global.asax and transferred to ExceptionFormView.aspx.
It works fine locally, but not when we deploy to servers. Any thoughts?
Do I need PrecompiledApp.config?
我在App_Code中创建了一个新类
namespace Site {
public class MyClass {
public MyClass() {
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的Global.asax.cs
namespace Site {
public class Global : System.Web.HttpApplication {
protected void Application_Start(object sender, EventArgs e) {
*MyClass myClass = new MyClass();*
}
}
}
Run Code Online (Sandbox Code Playgroud)
错误发生在:MyClass myClass = new MyClass();
找不到类型或命名空间名称'MyClass'(您是否缺少using指令或程序集引用?)
我在这里错过了什么?
我想在我的global.asax中检查Session是否包含一些键/值数据.我不确定最早可能的时间(和方法名称)是什么时候检查一下.
谢谢 :)
我正在尝试在Global.asax文件中获取对用户对象的引用Application_BeginRequest
.我正在使用该物业,Context.User
但我得到了NullReferenceException
.是否可以在Application_BeginRequest中获取用户对象引用?
global-asax ×10
asp.net ×9
c# ×4
iis-7 ×2
.net ×1
app-code ×1
asp.net-3.5 ×1
iis-7.5 ×1
session ×1
url-routing ×1
was ×1
wcf ×1