小编Dre*_*ing的帖子

身份2.1 - UserId未找到但之前正在工作

此代码在很多次之前有效,但在为Identity 2.1中的用户添加了几个新属性后,它已经停止工作.我收到UserId未找到错误,尽管在UserId的调试器中可以看到一个值.任何人都知道为什么突然发生这种情况?至少看到它是非常令人沮丧的.

这是代码:(控制器)

 // POST: /Account/Register
    [HttpPost]
    [AllowAnonymous]
    [ValidateAntiForgeryToken]
    public async Task<ActionResult> Register(RegisterViewModel model)
    {
        model.BackgroundOnFile = false;

        if (ModelState.IsValid)
        {
            var userDetails = new ApplicationUser { UserName = model.Email, Title = model.Title, Email = model.Email, FirstName = model.FirstName, LastName = model.LastName, LEAID = model.LEAID, SchoolID = model.SchoolID, Address1 = model.Address1, Address2 = model.Address2, City = model.City, State = model.State, PostCode = model.PostCode, BackgroundOnFile = model.BackgroundOnFile, BoardStart = model.BoardStart, BoardEnd = model.BoardEnd, PhoneNumber = model.PhoneNumber };
            var result = await …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc-5 asp.net-identity

10
推荐指数
1
解决办法
8981
查看次数

MVC5和SSRS ReportViewer - 如何实施?

我花了好几个小时试图解决这个问题,到目前为止我可以找到基于MVC1,MVC2和MVC3的解决方案,但是没有关于MVC5和使用SSRS和ReportViewer的解决方案.坦率地说,我不了解WebForms,因为我加入了编程世界之后,MVC在我工作的商店中是一件大事.足够多的背景故事,我会接受它.

我有:

  • 写了一个存储过程
  • 使用VS 2013中的商业智能工具设计我的报告
  • 查看设计师的报告并知道它很好
  • 尝试将ReportViewer集成到我的应用程序中但没有成功
  • 确定它似乎我需要重新执行我的查询调用(尽管它在报表设计中),并使用一组测试日期编写代码来执行此操作
  • 确定的WebForms以某种方式参与使我的报告显示在我的应用程序中.

所以我已经达到了我认为我只需要aspx文件来完成我需要做的事情.如果有人能看到这个并帮助我,你会让我治愈许多小时的压力.

首先,我的RouteConfig.cs文件的片段:

routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
Run Code Online (Sandbox Code Playgroud)

我的报告控制器代码:

     [HttpPost]
        public ActionResult GetSysWideQuizReport([Bind(Include = "Topic, Date1, Date2")] QuizReporting quizParams)
        {
 ReportViewer ReportViewer1 = new ReportViewer();
            ReportViewer1.ProcessingMode = ProcessingMode.Local;
            ReportViewer1.LocalReport.ReportPath = Request.MapPath(Request.ApplicationPath) + @"Reports\System Quiz Report.rdl";
            ReportDataSource source = new ReportDataSource("DataSet1", QuizData(quizParams));
            ReportViewer1.LocalReport.DataSources.Clear();
            ReportViewer1.LocalReport.DataSources.Add(source);

            return View(ReportViewer1);
        }



private DataTable QuizData(QuizReporting quizParams)
        {

            DataSet ds = new …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc reporting-services

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

调试IDE弹出窗口错误"对象引用未设置为对象的实例"后

在努力学习代码之后,我注意到一些奇怪的事情:在结束我的调试会话并回到我的MVC控制器后,我得到一个实际的弹出警报,指示"对象引用未设置为对象的实例".我没有得到一个,我得到了它们的整个级联,VS基本上锁定了需要重新启动的点.这似乎不寻常,因为我没有调试任何东西,这个错误出现在Visual Studio 2013本身,而不是任何代码错误或错误面板.

我试图解决这个问题:

  • 在localhost上刷新我的数据库.这没有解决它.
  • 快速点击键盘快捷键重建项目.这种方法约占75%的时间.
  • 在警报级联显示发生之前尝试清理项目.当VS重启时,这总是固定它.如果我运行调试器来测试我的Web应用程序,它会回来.
  • 这不会与其他项目一起回来.

我正在处理的代码函数与测验有关 - 我已经创建了一周前测试的初始测验函数,但现在我正在进行"简历测验"功能.所以在控制器中非常相似和一些共享方法.

这对我来说非常困难,因为我的整个IDE对于这部分代码都没用.有没有人遇到VS本身说"对象引用未设置为对象的实例"?

c# visual-studio-2013

5
推荐指数
1
解决办法
1040
查看次数

身份2.1 - 从以前的所有角色中删除,然后添加到特定角色?在执行此操作时调用UserManager时出错

我正在为系统管理员编写用户管理器,您可以在其中对用户对象执行各种功能.我目前的困境是我希望能够写出类似的东西

await UserManager.RemoveFromRoleAsync(userID, any);
Run Code Online (Sandbox Code Playgroud)

并将该人从以前的所有角色中删除.

现在我已经编写了这段代码,但它"感觉"很脏,可能会更好.在测试时,我也得到一个通用的"对象未设置为对象实例"错误.

控制器代码(用户ID和级别从调用页面传入):

var userID = "68790581-d2ae-4bc3-8db3-e4c8f4b0bb9f";
        string level = "FullAdmin";

//POST: /Account/MakeAdmin
        [HttpPost]
        [Authorize(Roles = "SuperAdmin")]
        public async Task<ActionResult> MakeAdmin(string userID, string level)
        {

        if(userID == null || level == null)
        {
            return View("Error");
        }

        if (level == "FullAdmin")
        {
            try
            {
                await UserManager.RemoveFromRoleAsync(userID, "Admin1");
            }

            catch { }

            try
            {
                await UserManager.RemoveFromRoleAsync(userID, "ReadOnly");
            }

            catch { }

            //Add to the desired role
            try
            {
                await UserManager.AddToRoleAsync(userID, "SuperAdmin");
            }
            catch (Exception ex)
            {
                ViewBag.Exception = …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc asp.net-identity

4
推荐指数
1
解决办法
3262
查看次数