Tag: asp.net mvc

如何部署具有多个区域的asp.net mvc 4应用程序

我按照这篇文章制作了可插拔的asp.net mvc4应用程序 但在部署应用程序时面临问题。 在我的解决方案中, MainProj是主项目,其中所有其他项目都在区域文件夹中。 每个项目都有它的模型,视图和控制器。 我已经在MainProj中提供了所有子项目(区域文件夹中的项目)的引用 。 现在,当尝试部署MainProj时 ,它只发布带有视图的主项目(在本例中为MainProj),区域文件夹中的项目没有部署(例如:Cart,CRM)。 即使我在主项目(MainProj)中添加区域(ex CRM)项目的引用,也只有区域项目的ddl(ex CRM)部署在bin文件夹中,区域中没有项目视图(CRM)部署。 什么是错的。 这是解决方案的结构: 这是我原来的文件夹结构。 但是当我在visual studio中以调试模式运行我的项目时,应用程序运行得非常好。 所以我点击屏幕底部系统托盘中的iis express图标,观察到visual studio为每个项目托管不同的站点。 这里找到了一些类似的答案,但在我的案例中却没有。 请让我知道我错过了什么或做错了什么。 部署此类应用程序的正确方法是什么。 提前致谢。

如果我已经拥有Access Token的值,如何创建UserCredential的实例?

所以我有这个代码 我的问题是如果我已经通过OAuthvalidation了如何配置UserCredential ? 当前场景是代码将显示另一个重定向到谷歌的登录页面。 由于我已经使用asp.net MVC通过OAuth进行了身份validation,并且我已经拥有令牌如何摆脱GoogleWebAuthorizationBroker并直接传递令牌? string[] scopes = new string[] {PlusService.Scope.PlusLogin, PlusService.Scope.UserinfoEmail, PlusService.Scope.UserinfoProfile}; UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync(new ClientSecrets { ClientId = “xxx.apps.googleusercontent.com”, ClientSecret = “xxxx” }, scopes, Environment.UserName, CancellationToken.None, new FileDataStore(“Store”)).Result; PlusService service = new PlusService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = “ArcaneChatV2”, }); PeopleResource.ListRequest listPeople = service.People.List(“me”, PeopleResource.ListRequest.CollectionEnum.Visible); listPeople.MaxResults = 10; PeopleFeed […]

在ASP.NET MVC中显示文本区域中的新行

我目前正在使用ASP.NET MVC创建一个应用程序。 我在textarea中得到了一些用户输入,我想用而不是换行显示这个文本。 在PHP中有一个名为nl2br的函数,它正是这样做的。 我在网上搜索了ASP.NET / C#中的等价物,但没有找到适合我的解决方案。 第一个是这个(对我没有任何作用,评论只是打印没有新行): <% string comment = Html.Encode(Model.Comment); comment.Replace("\r\n", "\r\n”); %> 我找到的第二个是这个(Visual Studio告诉我VbCrLf在这个上下文中不可用 – 我在视图和控制器中尝试过): <% string comment = Html.Encode(Model.Comment); comment.Replace(VbCrLf, "”); %>

如何从Windows服务调用WebAPI

我有一个用Windows Service编写的应用程序,这个应用程序需要调用用Asp.Net MVC 4 WebAPi编写的WebAPI。 WebAPI中的此方法返回具有基本类型的DTO,如: class ImportResultDTO { public bool Success { get; set; } public string[] Messages { get; set; } } 在我的webapi public ImportResultDTO Get(int clientId) { // process.. and create the dto result. return dto; } 我的问题是,如何从Windows服务中调用webApi? 我有我的URL和参数值,但我不知道如何调用以及如何将xml结果反序列化到DTO。 谢谢

如何在MVC htmlAttribute中设置禁用

使用HTML Helper时,根据条件设置属性的最佳方法是什么。 例如 m.FirstName, new {@class=’contactDetails’}%> m.FirstName, new {@class=’contactDetails’, disabled = true}%> 必须有一种更好的方法来以编程方式向匿名类型添加一个额外的KeyPair吗? 不能用 new { …. disabled = Page.User.IsInRole(“administrator”) … } 因为浏览器将任何禁用的属性值视为禁用输入

使用Google API for .NET访问用户信息

我正在使用Google API Preview(1.7.0)通过OAuth2授权用户。 我一直在关注示例MVC代码 。 这是我对FlowMetadata实现: private static readonly IAuthorizationCodeFlow flow = …; // Implementation of tokens public static async Task GetCredentials(Controller controller, CancellationToken cancellationToken) { var result = await new AuthorizationCodeMvcApp(controller, new Models.Generic.AppFlowMetadata()).AuthorizeAsync(cancellationToken); if (result.Credential != null) { // Struggling here. How do I make a request to get the e-mail address? } } […]

如何使用ASP.Net Web Api 2进行部分响应

我是API设计和MVC概念的新手,但据我所知,像GET / api / products这样的东西应该返回一个产品列表,而GET / api / products / 1应该返回一个产品。 在速度方面,我的感觉是/ api / products应该返回较少的信息,即id和name,而/ api / products / 1应该返回更多,即id,name和description。 据我所知,处理此问题的最佳方法是不在/ api / products端点中返回产品类的某些字段。 对于/ api / products?fields = name,这尤其必要。 我正在使用ASP.Net Web Api 2并尝试了以下方法: http://www.nuget.org/packages/WebApi.PartialResponse/ – 安装此软件包导致程序集版本错误。 在Product字段上添加ShouldSerialize方法。 由于我不会进入这里的原因,这种方法有点麻烦。 看看ASP.NET Web API部分响应Json序列化,但似乎没有一个确定的答案。 ASP.NET WebApi和Partial Responses建议使用包含所有可空字段的产品类。 我不确定我到底知道该做什么。 有什么简单的方法可以做我想做的事情吗? 否则你能建议一个比我正在做的更好的API设计吗?

如何保存上传的文件? c#mvc

我想将一个图像文件上传到项目的文件夹,但是我的catch中有一个错误:无法找到路径’C:\ project \ uploads \ logotipos \ 11111 \’的一部分。 我做错了什么? 我希望保存我的客户端在该文件夹中上传的图像…该文件夹存在…啊,如果我为folder_exists3设置一个断点,显示一个真正的值! 我的代码是: try { var fileName = dados.cod_cliente; bool folder_exists = Directory.Exists(Server.MapPath(“~/uploads”)); if(!folder_exists) Directory.CreateDirectory(Server.MapPath(“~/uploads”)); bool folder_exists2 = Directory.Exists(Server.MapPath(“~/uploads/logo”)); if(!folder_exists2) Directory.CreateDirectory(Server.MapPath(“~/uploads/logo”)); bool folder_exists3 = Directory.Exists(Server.MapPath(“~/uploads/logo/” + fileName)); if(!folder_exists3) Directory.CreateDirectory(Server.MapPath(“~/uploads/logo/”+fileName)); file.SaveAs(Server.MapPath(“~/uploads/logo/” + fileName+”/”)); } catch(Exception e) { } 有人知道我做错了什么? 谢谢 :)

如何在Asp.Net MVC中动态插入部分视图

我正在将Webforms站点迁移到MVC。 在我的webforms网站中,我有使用各种用户控件组合的页面,然后是html块,然后是标签,文本框等。 我不想硬连线每个页面,所以我将从CMS驱动每个页面的输出,指定将控件插入页面的顺序。 我想每个控件现在都是MVC中的部分视图。 (如果这不正确,请告诉我)。 因此,如果我有两个不同的局部视图,ViewA和ViewB,如何创建一个控制器方法,将部分视图插入到按CMS确定的给定URL的顺序返回的视图中? 因此,假设控制器方法称为Reports,它采用名为product的参数。 例如// MySite / Reports?product = A返回包含ViewA,ViewA,ViewB,ViewA的视图 而 // MySite / Reports?product = B返回包含ViewA,ViewB,ViewA,ViewB等的视图 那么代码应该用于控制器方法呢? 我希望这是有道理的

entity framework:检查实体的所有关系以供外键使用

我有一个实体,我们称之为CommonEntity ,它在许多其他实体中使用主键作为外键。 随着应用程序的开发,这些链接将继续增长。 我想知道是否可以安全地删除CommonEntity (即它没有被任何其他实体使用)。 我意识到我能做到 if(!ce.EntityA.Any() && !ce.EntityB.Any() … && !ce.EntityN.Any()) { //Delete } 但是我希望能够自动检查所有关系,因为我不喜欢每次添加新关系时都必须手动更改此代码。 也许EF4 +中有一些我不知道的东西? 我认为有可能使用事务范围来尝试删除对象并在它失败时将其回滚,但我不确定这种方法是否存在任何不良副作用。 有更好的方法吗? 编辑:看起来VS2012使用EF5即使项目是.Net 4,所以它创建了POCO模型,即使它是从数据库生成的。