Tag: asp.net

在.NET Web应用程序中获取当前目录

所以我有一个Web项目,我试图使用C#方法Directory.GetCurrentDirectory()获取网站的根目录。 我不想使用静态path,因为将来文件位置将发生变化。 这个方法运行在我的imageProcess.aspx.cs文件中,但是我认为它会返回: C:\Users\tcbl\documents\visual studio 2010\Projects\ModelMonitoring\ModelMonitoring\imageProcess.aspx.cs 我反而得到: C:\Program Files\Common Files\Microsoft Shared\DevServer\10.0\ 任何人都可以解释为什么会发生这种情况,可能的解决scheme是什么? 非常感谢。

用JavaScript回发ASP.NET

我有几个小div使用jQuery拖动。 这些div放在UpdatePanel ,在dragstop上使用_doPostBack() JavaScript函数。 在那里我从页面表格中提取必要的信息。 我的问题是,当我调用这个函数整个页面被重新加载,但我只想要更新面板被重新加载。

使用entity framework时,什么是良好的devise实践?

这将主要适用于不通过soa访问数据的asp.net应用程序。 这意味着你可以访问从框架加载的对象,而不是传输对象,尽pipe一些build议仍然适用。 这是一个社区post,所以请根据您的情况补充。 适用于 :Visual Studio 2008 sp1附带的entity framework1.0。 为什么selectEF呢? 考虑到这是一个年轻的技术,有很多问题(见下文),可能是一个很难卖你的项目EF EF的行列。 但是,这是微软推动的技术(以Linq2Sql为代表的EF子集)。 另外,你可能不满意NHibernate或其他解决scheme。 不pipe是什么原因,有人在那里(包括我)和EF一起工作,生活也不坏。让你想想。 EF和inheritance 第一大主题是inheritance。 EF确实支持以两种方式持久化的inheritance类的映射:每个类的表和表的层次结构。 build模很容易,而且这个部分没有编程问题。 (以下内容适用于每个类模型的表,因为我没有每个层次表的经验,无论如何,这是有限的)。当您试图运行包含一个或多个对象的查询一个inheritance树:生成的sql非常糟糕,需要很长时间才能被EFparsing并且需要很长时间才能执行。 这是一个真正的表演塞。 足够的EF可能不应该用inheritance或尽可能less。 这是一个很糟糕的例子。 我的EF模型有30个类,其中约10个是inheritance树的一部分。 在运行查询以从Base类获取一个项目(如Base.Get(id))时,生成的SQL超过了50,000个字符。 然后当你试图返回一些关联时,它会退化得更多,甚至会抛出SQLexception一次不能查询超过256个表。 好吧,这是不好的,EF的概念是允许你创build你的对象结构没有(或尽可能less)考虑你的表的实际数据库实现。 这完全失败了。 那么,build议? 如果可以,避免inheritance,性能会好很多。 在必要的地方谨慎使用它。 在我看来,这使得EF成为查询的一个光荣的sql生成工具,但是使用它仍然有优势。 以及如何实现类似于inheritance的机制。 用Interfaces绕过inheritance 试图获得与EF一起进行某种types的inheritance时,首先要了解的是,不能将一个非EF模型化的类分配给一个基类。 不要尝试它,它会被build模者覆盖。 那么该怎么办? 您可以使用接口来强制这些类实现一些function。 例如,这里是一个IEntity接口,它允许您定义在devise时不知道实体types的EF实体之间的关联。 public enum EntityTypes{ Unknown = -1, Dog = 0, Cat } public interface IEntity { int […]

MVC 4或5的MEF – 可插拔架构(2014)

我正在尝试使用像Orchard CMS这样的可插入架构来构buildMVC4 / MVC5应用程序。 所以我有一个MVC应用程序,这将是启动项目和照顾auth,导航等。然后将有多个模块单独构build为asp.net类库或剥离mvc项目,并有控制器,视图,数据仓库等。 我已经花了整整一天的时间在网上的教程和下载样本等,发现肯尼有最好的例子 – http://kennytordeur.blogspot.in/2012/08/mef-in-aspnet-mvc-4-and -webapi.html 我能够从模块(独立的DLL)中导入控制器,如果我添加对这些DLL的引用。 但是使用MEF的原因是能够在运行时添加模块。 我希望将DLL和视图一起复制到启动项目的〜/ Modules //目录中(我设法做到了这一点),MEF只会把它们选中。 努力使MEF加载这些库。 还有MefContrib在这个答案解释ASP.NET MVC 4.0控制器和MEF,如何把这两个一起? 这是我将要尝试的下一件事情。 但是我很惊讶,MEF没有像MVC那样开箱即可。 有没有人有类似的架构工作(有或没有MefContrib)? 最初,我甚至想到剥离Orchard CMS并将其用作框架,但这太复杂了。 在MVC5中开发应用程序以利用WebAPI2也是很好的。

如何在使用接口时实现私人setter?

我已经创build了一些属性的接口。 如果接口不存在,则将该类对象的所有属性设置为 {get; private set; } 但是,在使用一个接口的时候这是不允许的,那么这个可以实现吗?

Ajax更新(jQuery)后,在jQuery中重新绑定事件(updatepanel)

我在页面上有几个input和选项元素,每个(几乎)都有一个事件附加在页面更新后更新一些文本。 我使用的jQuery真的很酷:) 我也使用微软Ajax框架,利用UpdatePanel。 我这样做的原因是某些元素是基于某些服务器端逻辑在页面上创build的。 我真的不想解释为什么我使用UpdatePanel – 即使它可以(它可以很费力)被重写为只使用jQuery,我仍然想要UpdatePanel。 您可能已经猜到了 – 一旦在UpdatePanel上有回发,jQuery事件就停止工作。 我其实是期待这个,因为“回发”不是一个真正的新的回发,所以我的代码在document.ready绑定事件将不会再次被激发。 我也通过在jQuery帮助库中阅读它来证实我的怀疑。 无论如何,我留下了UpdatePanel完成更新DOM后重新绑定我的控件的问题。 我最好需要一个解决scheme,不需要在页面中添加更多的.js文件(jQuery插件),而是能够捕获UpdatePanel的'afterupdating',在那里我可以调用我的方法重新绑定所有表单元素。

MVC 5访问声明标识用户数据

我正在开发一个MVC 5 Web应用程序使用entity framework5数据库优先的方法。 我正在使用OWIN进行用户身份validation。 下面显示我的帐户控制器中的我的login方法。 public ActionResult Login(LoginViewModel model, string returnUrl) { if (ModelState.IsValid) { var user = _AccountService.VerifyPassword(model.UserName, model.Password, false); if (user != null) { var identity = new ClaimsIdentity(new[] { new Claim(ClaimTypes.Name, model.UserName), }, DefaultAuthenticationTypes.ApplicationCookie, ClaimTypes.Name, ClaimTypes.Role); identity.AddClaim(new Claim(ClaimTypes.Role, "guest")); identity.AddClaim(new Claim(ClaimTypes.GivenName, "A Person")); identity.AddClaim(new Claim(ClaimTypes.Sid, user.userID)); //OK to store userID here? […]

如何在debuggingASP.NET应用程序时在Fiddler中显示本地主机stream量?

如何在debuggingASP.NET应用程序时在Fiddler中显示localhoststream量?

你什么时候需要.ascx文件,你将如何使用它们?

当build立一个网站,什么时候使用.ascx文件是一个好主意? .ascx究竟是什么,它用于什么? 例子会帮助很多谢谢!

IHttpHandler与IHttpModule

我的问题很简单(虽然答案很可能不会):我试图决定如何在C#/ ASP.NET中实现服务器端上传处理程序。 我已经使用HttpModules(IHttpModule接口)和HttpHandlers(IHttpHandler接口),我发现我可以使用任何一种机制来实现这一点。 我也觉得我不了解两者的区别。 所以我的问题是: 在什么情况下,我会select使用IHttpHandler而不是IHttpModule(反之亦然)? 是否有人执行更高的pipe道? 在某些情况下configuration更容易吗? 中等安全性不适合吗?