Tag: asp.net mvc

如何更改asp.net mvc格式化JSON的方式?

我有这个型号 : public class Person { public string Name { get; set; } public int Age { get; set; } public List Colors { get; set; } } public class Color { public int ColorId { get; set; } public string Name { get; set; } } 和asp.net MVC的return Json(…)给了我这个: [{“Name”:”JC”,”Age”:24,”Colors”:[{“ColorId”:1,”Name”:”Red”},{“ColorId”:2,”Name”:”Blue”}]}, {“Name”:”Albert”,”Age”:29,”Colors”:[{“ColorId”:2,”Name”:”Blue”}]}] 当我尝试返回一种类型: List 但我想要这样的东西(如果可能的话): […]

如果在DbContext中更改model-class,我是否重建数据库?

我在带有DBContext的MVC中有我的应用程序,在我的SQL的本地主机中,我的数据库有数据。 然后我需要在一个表中添加一个新列,在我的模型类中添加我的新成员,然后在SQL中修改我的表,但是当我执行我的应用程序时:“..上下文已经改变…考虑使用代码首先迁移.. “。

以编程方式将x509证书上载到azure应用程序清单

有没有办法以编程方式将Visual Studio中创建的x509证书上载到Azure应用程序清单中? 我按照这篇文章创建了x509证书: public static X509Certificate2 GenerateSelfSignedCertificate(string subjectName, string issuerName, AsymmetricKeyParameter issuerPrivKey) { const int keyStrength = 2048; //generate random numbers CryptoApiRandomGenerator randomGenerator = new CryptoApiRandomGenerator(); SecureRandom random = new SecureRandom(randomGenerator); ISignatureFactory signatureFactory = new Asn1SignatureFactory(“SHA512WITHRSA”, issuerPrivKey, random); //the certificate generator X509V3CertificateGenerator certificateGenerator = new X509V3CertificateGenerator(); certificateGenerator.AddExtension(X509Extensions.ExtendedKeyUsage.Id, true, new ExtendedKeyUsage(KeyPurposeID.IdKPServerAuth)); //serial number BigInteger serialNumber = […]

何时在MVC中使用哪种类型的成员资格的一般规则

我已经在Microsoft MVC中了解了3种类型的成员资格。 他们是: 的MembershipProvider extendedmembershipprovider simplemembershipprovider 显然他们有不同的用途。 选择每一项的关键优势是什么? 有人可以描述一下吗? 谢谢。

查看数据字典覆盖ASP.NET MVC中的模型数据

我有一个创建用户的视图,如下所示。 UserName: Password: 单击“创建”按钮时,HTML表单将发布到名为“SaveUser”的操作,该操作仅接受“POST”动词,如下所示。 [AcceptVerbs(HttpVerbs.Post)] public ActionResult SaveUser( UserViewModel user) { //user.Id is zero before save //Save the user. Code omitted… //user.Id is now greater than zero //redirect to edit user view return View(“EditUser”, user ); } 保存用户后,页面将重定向到“EditUser”视图 Id: 这是问题所在:隐藏字段的值保持显示为零。 Model.Id大于零。 似乎其他东西覆盖了模型视图值。 ViewDataDictonary是个嫌疑人。 因此,在返回操作中的视图之前添加一行,如下所示。 [AcceptVerbs(HttpVerbs.Post)] public ActionResult SaveUser( UserViewModel user) { //user.Id is zero before […]

如果没有将模型类的实例传递给视图,如何避免Create.cshtml中的EditorFor(x = x.Prop)生成的nullexception?

约束: 我不想使用Nullable类型。 我不想在HttpGet Create操作方法中实例化一个模型类。 型号类: namespace MvcTest.Models { public enum Gender { Male, Female } public class Person { public Gender Gender { get; set; } } } 模板编辑助手(Gender.cshtml): @using MvcTest.Models @model Gender @{ var genders = from Gender g in Enum.GetValues(typeof(Gender)) select new { Value = g, Text = g.ToString() }; var sl = […]

具有entity framework6的ObjectContext在现有相关实体上插入重复项

我正在创造这个以希望为一些人节省一些浪费的时间,或者在我的情况下为星期六。 问题如下: 我的主要实体在这个实例中称为case,在通过validation时,我会保存到对象上下文,就像这样 context.AddToCases(caseModel); context.SaveChanges(); 问题是案件发生了相关事件。 我正在添加一个名为事件的上下文感知项,我正在通过上下文查找 caseModel.Incident = context.Incidents.SingleOrDefault(i => i.IncidentNumber == jumpIncidentNumber); 随着代码运行,我可以看到model.Incident有一个EntityKey并且添加了状态,并且正在添加重复项。 不仅如此,保存后的结论参考是新创建的记录。 我以为我立刻知道了答案,我只需事先通过Attach运行事件模型 context.Attach(incident); caseModel.Incident = incident; 错误。 虽然它的EntityState没有变化,但它仍然是重复的。 除此之外,结果参考是原始事件,不再是重复。

使用WebDriverJS(Selenium)的示例

我已经开始学习WebDriverJs来测试网站使用Javascript作为脚本语言来自urlhttps://code.google.com/p/selenium/wiki/WebDriverJs,但在开始时发现了一些理解问题。 根据该页面,我必须将chrome驱动程序保存到某个路径。 这条路是什么? 该路径如何链接到代码下面的示例? var webdriver = require(‘selenium-webdriver’); var driver = new webdriver.Builder(). withCapabilities(webdriver.Capabilities.chrome()). build(); driver.get(‘http://www.google.com’); driver.findElement(webdriver.By.name(‘q’)).sendKeys(‘webdriver’); driver.findElement(webdriver.By.name(‘btnG’)).click(); driver.wait(function() { return driver.getTitle().then(function(title) { return title === ‘webdriver – Google Search’; }); }, 1000); driver.quit(); 从NPM安装 % npm install selenium-webdriver 从Source构建 % git clone https://code.google.com/p/selenium/ % cd selenium % ./go //javascript/node:selenium-webdriver 什么是NPN及相关代码? 请解释一下。 PS:我基本上来自.Net背景 我是否需要进行更多设置才能运行上述代码? 例如,任何javascript文件等 […]

试图找出一种在ASP.NET MVC请求管道中的对象之间保持数据的优雅方法

框架:ASP.Net MVC 3 当请求进入时,我通过全局filter拦截请求并基于子域执行数据库查找。 DB查找中的返回int需要持久保存到其他对象(即控制器),以便在需要该数据时不需要再次执行DB命中。 我希望避免使用cookie,因为这些信息是系统的一个相关部分,我不想依赖于启用cookie。 我已经阅读了这里和这里的相关问题,但没有提供任何好的答案。 我其实有两个问题: 到目前为止,我已经提出了一个子域管理器对象来完成繁重的工作,通过我的IoC,管理器对象是HTTP请求作用域,我可以在请求期间随时抓取该管理器作为可能的解决方案。 在我查找之后,是否有更好的方法在MVC请求管道中的不同对象之间传递此信息? – 我已经检查了将信息以某种方式回到请求中的想法(这与问题#2有关)。 如果您要使用请求来存储数据(即拦截请求,执行查找,写入请求)哪里将是保存该信息的逻辑位置? 我查看了会话,但这似乎与为会话配置Web服务器的方式密切相关,我已经提到过我不想使用cookie。 出于安全原因,其他区域(如发布数据和查询字符串集合)将被锁定。 有什么建议?

在ASP.NET MVC中上传文件

当我选择一个文件并提交文件进行上传时,我无法获得模型中文件路径的值。 在Controller中,它显示为null 。 我究竟做错了什么? 视图 Load photo: 调节器 public ActionResult Profile(ProfileModel model, FormCollection form) { string path = Convert.ToString(model.FilePath); return View(); } 模型 public HttpPostedFileBase FilePath { get { return _filePath; } set { _filePath = value; } } public bool UploadFile() { if (FilePath != null) { var filename = Path.GetFileName(FilePath.FileName); FilePath.SaveAs(@”C:\” + filename); […]