小编Joe*_*Joe的帖子

使用.NET 4.0任务模式使用HTTPClient .ReadAsAsync将JSON反序列化为数组或列表

我正在尝试反序列化http://api.usa.gov/jobs/search.json?query=nursing+jobs使用.NET 4.0任务模式返回的JSON .它返回此JSON('加载JSON数据'@ http://jsonviewer.stack.hu/).

[
  {
    "id": "usajobs:353400300",
    "position_title": "Nurse",
    "organization_name": "Indian Health Service",
    "rate_interval_code": "PA",
    "minimum": 42492,
    "maximum": 61171,
    "start_date": "2013-10-01",
    "end_date": "2014-09-30",
    "locations": [
      "Gallup, NM"
    ],
    "url": "https://www.usajobs.gov/GetJob/ViewDetails/353400300"
  },
  {
    "id": "usajobs:359509200",
    "position_title": "Nurse",
    "organization_name": "Indian Health Service",
    "rate_interval_code": "PA",
    "minimum": 42913,
    "maximum": 61775,
    "start_date": "2014-01-16",
    "end_date": "2014-12-31",
    "locations": [
      "Gallup, NM"
    ],
    "url": "https://www.usajobs.gov/GetJob/ViewDetails/359509200"
  },
  ...
]
Run Code Online (Sandbox Code Playgroud)

指数行动:

  public class HomeController : Controller
  {
    public ActionResult Index()
    {
      Jobs model = null;
      var …
Run Code Online (Sandbox Code Playgroud)

c# json task-parallel-library asp.net-mvc-4 dotnet-httpclient

69
推荐指数
3
解决办法
15万
查看次数

从控制器打开新窗口中的mvc视图

有没有办法在新窗口中从控制器操作打开视图?

public ActionResult NewWindow()
{
    // some code
    return View();
}
Run Code Online (Sandbox Code Playgroud)

如何在新的浏览器选项卡中打开NewWindow.cshtml视图?

我知道如何从视图中的链接做到这一点 - 这不是问题.有没有人想出一种方法从控制器动作做到这一点?

asp.net-mvc-4

51
推荐指数
3
解决办法
14万
查看次数

无法加载文件或程序集'System.Web.WebPages.Razor,Version = 3.1.1

我正在尝试将项目从MVC 4/EF 5升级到MVC 5/EF 6.我将框架从4.5更新到4.5.1然后从NuGet更新了解决方案MVC(4.0.30506.0到5.1.1)和EntityFramework (5至6.1.1).这引起了Razor依赖(2.0.30506.0到3.1.1)和WebPages(2.0.30506.0到3.1.1).我编辑了Project and Views文件夹web.config以反映更改并从csproj中删除了GUID.

当我在调试中运行该站点时,在 - section name ="host"type ="System.Web.WebPages.Razor.Configuration.HostSection - line"上加载Views文件夹web.config时出错.

"为system.web.webPages.razor/host创建配置节处理程序时出错:无法加载文件或程序集'System.Web.WebPages.Razor,Version = 3.1.1"

它在前一行(System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup)或根web.config中的Razor引用没有问题.不幸的是,堆栈跟踪不识别调用程序集.

调用程序集:(未知).

所有相关文件都包含在下面.

有谁知道问题是什么,更重要的是如何解决它.我只更新了最基本的NuGet包:MVC和实体框架.

        packages.config:

…  
  <package id="EntityFramework" version="6.1.0" targetFramework="net451" />
  <package id="jQuery" version="2.0.2" targetFramework="net45" />
  <package id="jQuery.UI.Combined" version="1.10.3" targetFramework="net45" />
  <package id="jQuery.Validation" version="1.11.1" targetFramework="net45" />
  <package id="knockoutjs" version="2.2.1" targetFramework="net45" />
  <package id="Microsoft.AspNet.Mvc" version="5.1.1" targetFramework="net451" />
  <package id="Microsoft.AspNet.Mvc.FixedDisplayModes" version="5.0.0" targetFramework="net451" />
  <package id="Microsoft.AspNet.Razor" version="3.1.1" targetFramework="net451" />
  <package id="Microsoft.AspNet.Web.Optimization" version="1.0.0" targetFramework="net45" />
…
  <package id="Microsoft.AspNet.WebPages" version="3.1.1" targetFramework="net451" /> 
<!-- oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" --> …
Run Code Online (Sandbox Code Playgroud)

razor entity-framework-6 asp.net-mvc-5

12
推荐指数
2
解决办法
2万
查看次数

Visual Studio 2019 Community 16.8.4 在拖放 Tab 时崩溃

Visual Studio 2019 Community 16.8.4 在拖放文档选项卡时崩溃。

我重新安装了 VS 2019 Community,但没有解决问题。我已经使用 2019 社区一年了,没有任何问题。不确定它是否与 16.8.4 相关。

有没有其他人有这个问题?如果是这样,你有没有想出如何解决它?

visual-studio-2019

12
推荐指数
2
解决办法
5649
查看次数

如何将可选参数传递给ActionResult

这有效:

public ActionResult Edit(int id, CompPhone cmpPhn)
{
  var vM = new MyViewModel();
  if (cmpPhn != null) { vM.CmpPhnF = cmpPhn; }
  ...
}
Run Code Online (Sandbox Code Playgroud)

如果我让cmpPhn可选:

public ActionResult Edit(int id, CompPhone? cmpPhn)
Run Code Online (Sandbox Code Playgroud)

我得到"错误1类型'MyProject.Models.CompPhone'必须是不可为空的值类型,以便在泛型类型或方法'System.Nullable'中将其用作参数'T'.

如何使该方法的输入参数可选?

这是视图模型

public class MyViewModel : IValidatableObject
{
...
public CompPhone CmpPhnF { get; set; }    
...
}
Run Code Online (Sandbox Code Playgroud)

通话方式

[HttpPost, ValidateAntiForgeryToken]
public ActionResult PhoneTest(MyViewModel vM)
{
  if (ModelState.IsValid)
  { var cmpPhn = vM.CmpPhnF;
  return RedirectToAction("Edit", new { id = vM.AcntId, cmpPhn });
  }
  ...
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc-3

7
推荐指数
1
解决办法
2万
查看次数

MVC 4 Ajax.beginform提交 - 导致完全回发

MVC4互联网项目

我正在使用Ajax.BeginForm进行回传验证,它回发整个页面而不仅仅是UpdateTargetID.我已经查看了SO上的其他帖子,但没有找到答案.我已经构建了一个新的MVC4 Internet项目,仅用于测试(VS 2012已经使用'ASP.NET和Web Tools 2012.2'进行了更新).

这是我的代码

调节器

public ActionResult Index() 
{
  var vM = _db.Students.FirstOrDefault(); return View(vM);
}

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Index(Student vM)
{
  if (ModelState.IsValid)
  { //code if Model valid
    return Json(new { url = Url.Action("About", "Controller") });
  }
  ModelState.AddModelError(string.Empty, "AJAX Post");
  return PartialView("Index", vM);
}
Run Code Online (Sandbox Code Playgroud)

视图

@model AJAX_Test.Models.Student
@{ ViewBag.Title = "Student"; }
<script src="~/Scripts/jquery-1.8.2.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>
<script type="text/javascript">  var onSuccess = function (result)
{
  if (result.url) { window.location.href = result.url; } 
}
  // when server …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc jquery

7
推荐指数
2
解决办法
4万
查看次数

EF6迁移(LocalDb)更新 - 数据库登录失败

VS 2013 MVC5代码第一个项目.

我正在使用MVC5教程来完成ASP.NET的EF6入门,以便快速了解最新的更改,并且我遇到了迁移问题.在第一个模块中,使用数据库初始化程序创建数据库:

<contexts>
      <context type="ContosoUniversity.DAL.SchoolContext, ContosoUniversity">
        <databaseInitializer type="ContosoUniversity.DAL.SchoolInitializer, ContosoUniversity" />
      </context>
</contexts>
Run Code Online (Sandbox Code Playgroud)

和这个连接字符串:

<connectionStrings>
    <add name="SchoolContext" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=ContosoUniversity1;Integrated Security=SSPI;" providerName="System.Data.SqlClient"/>
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

这很好用.在Code First迁移和部署模块中,将设置迁移.初始化程序已注释掉,DB的名称更改为ContosoUniversity2:

<connectionStrings>
    <add name="SchoolContext" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=ContosoUniversity2;Integrated Security=SSPI;" providerName="System.Data.SqlClient"/>
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

何时update-database从Packager Manager Console运行它失败并显示错误消息:

Cannot open database "ContosoUniversity2" requested by the login. The login failed.
Login failed for user 'MyMachine\MyUser'.
Run Code Online (Sandbox Code Playgroud)

我使用相同的用户和相同的结果多次重新运行这两个方案.如果我更改Initial CatalogAttachDbFilename=|DataDirectory|\ContosoUniversity2; update-database成功(DB现在位于项目的App-Data文件夹中,而不是用户配置文件的根目录):

<connectionStrings>
    <add name="SchoolContext" connectionString="Data Source=(LocalDb)\v11.0; AttachDbFilename=|DataDirectory|\ContosoUniversity2;Integrated Security=SSPI;" providerName="System.Data.SqlClient"/>
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

您必须Initial Catalog在部署时使用.生产connectionString在Web.Release.Config中单独设置,以便可行. …

entity-framework ef-migrations localdb asp.net-mvc-5

6
推荐指数
2
解决办法
1万
查看次数

将SimpleMembership迁移到Identity 2.0

这个问题已经发展,所以我更新了标题.

这是原始标题:Identity 2 UserManager.Find抛出"无效的对象名称'dbo.ApplicationUser'"错误

我正在从SimpleMembership转换为Identity 2.我已经运行了转换脚本并重构了各种文件以供Identity使用.我可以构建并运行应用程序,但是当尝试登录"无效对象名称'dbo.ApplicationUser'"时,会在var user = UserManager.Find(vM.UserName,vM.Password)上抛出错误;

账户管理员:

  [RequireHttps]
  [Authorize]
  public class AccountController : Controller
  {
    private readonly IUserService _userService;

    public UserManager<ApplicationUser> UserManager { get; private set; }

    public AccountController() 
    : this(new UserService(), new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new MyDb()))) { } 

    public AccountController(IUserService userService, UserManager<ApplicationUser> userManager)
    { _userService = userService; UserManager = userManager; }

    // GET: /Account/Login
    [AllowAnonymous]
    public ActionResult Login() { return View(); }

    // POST: /Account/Login
    [HttpPost]
    [AllowAnonymous]
    [ValidateAntiForgeryToken]
    public ActionResult Login(LoginVm vM)
    { 
      if (ModelState.IsValid) 
      { 
        var …
Run Code Online (Sandbox Code Playgroud)

asp.net-identity entity-framework-6.1

6
推荐指数
1
解决办法
3081
查看次数

启用MVC 5.1调试不会禁用捆绑和缩小

从VS 2013.2RTM Pro,MVC 5.1应用程序运行调试.

如果编译模式设置为debug ="true",则应该禁用Bundling和minification,但它不会.当我检查页面上的View源时,样式和脚本是捆绑在一起的.
<script src="/bundles/modernizr?v=K-FFpFNtIXjnmlQamnX3qHX_A5r984M2xbAgcuEm38iv41"></script>

如果我BundleTable.EnableOptimizations = false;在BundleConfig.cs中设置它会禁用捆绑和缩小,但这不是它应该如何工作.我不应该记得切换EnableOptimizations设置!

事情在VS 2012 MVC 4应用程序中正常运行.

这是一个MVC 5.1错误吗?有没有其他人有这个问题?有没有办法让调试禁用捆绑和缩小?

web.config:

  <system.web>
    <authentication mode="None" />
    <compilation debug="true" targetFramework="4.5" />
    <httpRuntime targetFramework="4.5" useFullyQualifiedRedirectUrl="true" maxRequestLength="100000" enableVersionHeader="false" />
    <sessionState cookieName="My_SessionId" />
  <httpModules>
      <add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah" />
      <add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah" />
      <add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
    </httpModules>
  </system.web>
Run Code Online (Sandbox Code Playgroud)

_Layout.cshtml:

在标题中

@Styles.Render("~/Content/css") @Styles.Render("~/Content/themes/base/css") @Scripts.Render("~/bundles/modernizr")

在身体的尽头

@Scripts.Render("~/bundles/jquery") @Scripts.Render("~/bundles/jqueryui") @Scripts.Render("~/bundles/jqueryval")

bundling-and-minification visual-studio-2013 asp.net-mvc-5.1

6
推荐指数
1
解决办法
1715
查看次数

Windows 10 为 openssh 导入 pem 文件

视窗 10 专业版

OpenSSH 客户端已经安装。

我有一个由我的 AWS EC2 实例提供的 pem 文件。

如何以及在哪里安装 Windows 10 中的 pem 证书。

mmc 无法识别格式。

这是我要运行的 ssh 命令。

ssh -ic:\my.pem ec2-user@xx.xx.xx.xxx。

正如预期的那样,WARNING: UNPROTECTED PRIVATE KEY FILE ... ec2-user@xx.xx.xx.xxx: Permission denied 但这表明 OpenSSH 客户端正在工作。

我已经在互联网上搜索过,但无济于事。

ssh openssh pem amazon-web-services windows-10

6
推荐指数
1
解决办法
3803
查看次数