使用 MySql 和 MVC 3 上的会员资格向注册表单添加更多字段

2023-11-22

我创建了一个基于 asp.net MVC 3 和 MySql 的网站 我获得了使用 MySQL .NET 连接器的会员资格 因此,使用默认应用程序,您可以使用 mvc 3 的新项目获得一个工作注册表单和一个工作登录表单

但是...我如何在注册表中添加更多字段? 我知道如何将它们添加到我的模型和页面中。但是我如何让会员保留用户无法获取的新数据? 我必须自己在数据库中创建列吗?或者会员是否知道如何以某种方式自动创建它们?

我只想要另外 3 个字段用于注册...

thanks


查看您的 AccountModels.cs 文件。它包含

public class RegisterModel
{ 
   // User name, Email Adress, Password, Password confirmation already there

   // you can add something like below
    [Required]
    [Display(Name = "Nickname")]
    public string Nickname { get; set; }
}

一旦模型中有新属性,您就需要更新视图。在 Views > Account > Register.cshtml 中,您应该添加

        <div class="editor-label">
            @Html.LabelFor(m => m.Nickname )
        </div>
        <div class="editor-field">
            @Html.PasswordFor(m => m.Nickname )
            @Html.ValidationMessageFor(m => m.Nickname )
        </div>

完成后,您需要更新注册逻辑以使用新属性。进入AccountController并找到

    [HttpPost]
    public ActionResult Register(RegisterModel model)
    {
        if (ModelState.IsValid)
        {
            // Attempt to register the user
            MembershipCreateStatus createStatus;
            Membership.CreateUser(model.UserName, model.Password, model.Email, null, null, true, null, out createStatus);

            if (createStatus == MembershipCreateStatus.Success)
            {
                FormsAuthentication.SetAuthCookie(model.UserName, false /* createPersistentCookie */);
              //
              // this would be a good place for you to put your code to do something with model.Nickname
              //                    
              return RedirectToAction("Index", "Home");
            }
            else
            {
                ModelState.AddModelError("", ErrorCodeToString(createStatus));
            }
        }

        // If we got this far, something failed, redisplay form
        return View(model);
    }

如果您想将该信息保留到用户 ASP.NET 配置文件中,则需要在 Web.config 中使用此信息

<profile>
  <providers>
    <clear />
    <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" />
  </providers>
  <properties>
    <add name="Nickname" defaultValue="False" type="System.String" />
  </properties>
</profile>

然后在你的代码中 - 你可以这样做

var userProfile = ProfileBase.Create(model.UserName);

在个人资料中获取/设置您的属性

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 MySql 和 MVC 3 上的会员资格向注册表单添加更多字段 的相关文章

  • mvc 2中的图像上传和预览

    我正在通过转换 asp net 网站来学习 mvc 2 在我的页面中 我必须上传图像并显示图像的预览 下面给出了我的 asp net 页面的屏幕截图 我将模型创建为 public class Contest public int conte
  • index.g.cshtml 在哪里

    我正在尝试完成本教程 但是 通常 当我构建解决方案时 我会得到一个CS0234错误指出文件中缺少命名空间Index g cshtml cd 但是这个文件存在于哪里呢 我努力了 所有构建 清理 重建解决方案选项 我已重新启动 Visual S
  • 错误:“无法在 Web 服务器上开始调试...”ASP.NET 4.0

    当我想在 IIS 服务器上创建网站时出现错误 我使用的是 Windows 7 和 Visual Studio 2010 我是否必须为 IIS 注册或配置 asp net 4 0 这里没有太多细节 但是当我尝试在刚刚从 3 5 更改为 4 0
  • 从 .Net MVC 视图获取 HTML,而不在浏览器中实际渲染视图?

    我的控制器中有一个 ActionResult 我想从中发送 HTML 电子邮件 该电子邮件的正文是由视图生成的 我可以在传递模型时获取视图的结果并避免将其发送到浏览器 而不是在控制器中使用 2 个 actionresults 方法吗 Mvc
  • 如何为客户端和服务器缓存设置不同的缓存过期时间

    我想让某些页面为客户端提供 10 分钟缓存 为服务器提供 24 小时缓存 原因是如果页面发生变化 客户端将在 10 分钟内获取更新版本 但如果没有任何变化 服务器只需每天重建一次页面 问题在于输出缓存设置似乎覆盖了客户端设置 这是我的设置
  • 如何在 asp.net 网站中使用 aspnetdb 数据库

    我使用 asp net 3 5 创建了一个网站 现在我使用 Membership API 和 aspnetdb 数据库为其添加了会员支持 我已经在本地机器上完成了所有测试 现在 在将该站点上传到服务器时 需要考虑与 aspnetdb 有关的
  • 有没有更好的方法使用 MVC 4 和 Entity Framework 5 添加子记录?

    我正在学习 MVC 并结合实体框架处理其无状态性质 我的问题是 有没有更优雅的方式来处理下面的场景 我有两个 POCO 实体 public class Contest public long ID get set public IColle
  • AutoMapper.Mapper 不包含 CreateMap 的定义

    这可能是一个基本问题 但想知道我没有得到 AutoMapper Mapper CreateMap 方法 我使用了错误的 AutoMapper 参考 包吗 谢谢 静态版本CreateMap方法在 4 2 中已弃用 然后在版本 5 0 中从 A
  • Microsoft.Extensions.Caching.Redis 选择与 db0 不同的数据库

    一个关于了解使用哪个redis数据库以及如何配置它的问题 我有一个默认值ASP NET Core Web 应用程序和默认配置的本地redis服务器 含15个数据库 通过包管理控制台我已经安装了 Install Package Microso
  • 本地主机上的 .net HTTP_X_FORWARDED_FOR NULL

    抱歉 如果其他地方已经回答了这个问题 我找不到它 如果没有 我会尝试查找访问过该站点的机器的原始 IP 根据我的基本理解 变量HTTP X FORWARDED FOR无论代理和其他过滤器如何 都会显示用户的 IP 如果这是真的 我正在尝试对
  • 带有 HttpContext 的 ASP.NET MVC 单元测试控制器

    我正在尝试为我的一个控制器编写一个单元测试 以验证视图是否正确返回 但该控制器有一个访问 HttpContext Current Session 的基本控制器 每次我创建控制器的新实例时 都会调用 basecontroller 构造函数 并
  • 将多个对象传递给我的控制器

    我将一个对象传递给我的控制器 如下所示 var form JSON stringify subRevisedRequest frmRevised val subSubcontractor frmSubcontractor val subDe
  • ASP.NET MVC 子操作的路由匹配

    子动作的路由匹配方法与普通动作有什么不同吗 换句话说 子操作是否有一些自动生成的 url 来进行与父操作类似的匹配 父级或子级动作处理没有区别 任何操作都遵循您在中设置的相同路线定义Application Start 这意味着父母的行为以及
  • 阻止未确认电子邮件的用户使用 Identity 2 登录 ASP.Net MVC

    在 Microsoft Identity 2 中 用户可以确认我从以下位置下载了 Identity 2 示例项目的电子邮件地址here https www nuget org packages Microsoft AspNet Identi
  • MySQL Connector/C++ 库链接错误问题

    PROBLEM 好吧 我一直在尝试遵循 MySQL Forge Wiki 和其他一些网站上的示例代码 这些网站提供了有关如何获得简单数据库连接的教程 但由于某种原因 我的项目总是因链接错误而失败 我可以我自己不明白为什么或如何解决它 我仍在
  • 您可以运行一个从 ASP.Net 项目运行计划任务的“服务”吗?

    我为我们的客户构建了一个 Windows 服务 它从数据库中收集所有已更改 新的行 将它们转换为 CSV 然后每晚通过 FTP 将它们上传到某个地方 现在事实证明 他们无权安装或运行 Windows 服务 这是一个仅 Web 路径托管的解决
  • 如何从 Web API 应用程序返回 PDF

    我有一个在服务器上运行的 Web API 项目 它应该从两种不同类型的源返回 PDF 实际的可移植文档文件 PDF 和存储在数据库中的 base64 字符串 我遇到的问题是将文档发送回客户端 MVC 应用程序 剩下的部分是关于所发生的一切以
  • 使用实体框架重叠约会

    我将 asp net mvc 与实体框架一起使用 我有一个包含 startat 字段 endat 字段和 roomid 字段 称为 SpaceConfigurationId 的约会列表 并且希望查找给定房间已重复预订的约会列表 可以假设 e
  • 如何强制 Visual Studio 2008 生成 Designer.cs,例如不管怎样.aspx.designer.cs

    我在使用 Visual Studio 2005 使用网站技术生成的 Asp Net V2 0 中有一些 Web 表单 想要将它们导入到设置为 v3 5 Asp Net MVC 的 Visual Studio 2008 我在其中使用项目技术
  • mvc显示模板中当前项目的索引

    我有一个带有显示模板的 mvc 页面 如何获取显示模板中呈现的当前项目的索引 它在名称属性中产生正确的可绑定结果

随机推荐

  • 通过 Javascript 将 DOMTimeStamp 转换为本地化的 HH:MM:SS MM-DD-YY

    The W3C 地理定位 API 除其他外 用途DOM时间戳其修复时间 这是 自 Unix 纪元开始以来的毫秒数 将其转换为人类可读格式并调整本地时区的最简单方法是什么 的一个版本Date构造函数将 自 Unix 纪元开始以来的毫秒数 作为
  • 捕获 HTTP 请求

    有没有办法使用 C 监视和捕获来自计算机的所有传出 HTTP 请求 我需要一种独立于浏览器的方式来记录访问过的 URL 我用小提琴手 http www fiddler2 com
  • Eclipse 中的代码颜色样式

    一个很好的简单问题 是否有类似的东西http studiostyl es 对于日食 Update 因为我使用此链接来了解如何使用该插件 所以我想我应该将其放在这里 http www eclipsecolorthemes org view p
  • 在接口类中声明抽象信号

    当实现类已经从 QObject QWidget 派生时 如何在抽象类 接口中声明 Qt 信号 class IEmitSomething public this should be the signal known to others vir
  • 在 Symfony2 + Twig 中使用变量进行翻译是可能的吗?

    第一个输出未翻译的字符串 chart name short trans charts 这个有效 与chart name short 应该输出 charts region area short trans charts 我错过了什么吗 似乎在
  • 从 Appengine 连接到 Google Containers 的 Kubernetes 服务

    我有一个包含 Appengine 部分和 Google 容器集群的项目 Appengine 应用程序需要对部署到 Google 容器的服务进行 http 调用 我知道我可以为服务分配一个外部 IP 将其硬编码到我的 Appengine 应用
  • 如何从 Play 2 Java 上的路由反向生成绝对 URL?

    我想从 Play 2 Java 中的控制器获取绝对 URL 我找到了Scala 的完全相同的问题 但我无法让它在 Java 中工作 public class MyController extends Controller public st
  • iOS:旋转 uiimageview

    在我的应用程序中 我有一个图像视图 它的名称是箭头 我以这种方式将其旋转 180 度 arrow transform CGAffineTransformMakeRotation M PI 它工作正常 但现在我希望这个图像视图返回到原始位置
  • 使用 jQuery 将 Div 位置设置为鼠标位置

    我试图将我的 Div 放置在用户点击我的图像的任何位置 test是我的 Div 并且myimg是我的形象 这是我的JS
  • 如何从 Javascript 调用原生 Iphone/Android 函数?

    我在 iPhone 和 Android 中都使用 Web 视图 在Android中 我使用创建一个变量调用原生 Android 函数 方法 但我没能在 iPhone 中找到类似的东西 那么 如何从 JavaScript 调用本机 Iphon
  • PLSQL从XML读取值?

    我有一个带有 XML 代码的字符串 我想在 PL SQL 中将它的值提取到变量中 XML 非常简单 与此没有什么不同
  • ReactJS 如何设置默认选中复选框?

    在分配默认值后 我无法更新复选框状态checked checked 在反应中 var rCheck React createElement input type checkbox checked checked value true Che
  • javax.naming.NameNotFoundException:名称 jdbc 未在此上下文中绑定

    我正在从事网络服务 并且是初学者 我尝试在服务文件中获取 Oracle Db 连接 但收到以下错误 javax naming NameNotFoundException Name jdbc is not bound in this Cont
  • 使用 ant 构建 Android 测试时如何使用 emma 过滤器?

    我知道在构建 Android 测试项目时如何在 ant 中使用 emma 但在使用 SDK 时找不到任何有关如何使用过滤器的提示 emma 网站在自己调用 emma 时对此进行了解释 但在 Android SDK 构建文件中 emma 并未
  • 强制浏览器获取asp.net应用程序中最新的js和css文件

    有些浏览器会缓存 js 和 css 文件 除非您强制刷新 否则无法刷新它们 最简单的方法是什么 我刚刚实施了这个似乎有效的解决方案 在页面上声明版本变量 public string version get set 从 web config
  • C++ - 为什么我要在堆上创建这些小部件?

    使用 C 和 Qt 创建 GUI 时 您可以创建一个标签 如下所示 QLabel label new QLabel Hey you centralWidgetParent 这会在堆上创建对象 并将一直保留在那里 直到我手动删除它或父对象被销
  • C++ 类对象内存映射

    当我们创建一个类的对象时 它的内存映射是什么样的 我更感兴趣的是对象如何调用非虚拟成员函数 编译器是否创建一个像 vtable 这样在所有对象之间共享的表 class A public void f0 int int in b1 A a n
  • 处理嵌套 React 组件的状态变化

    所以 我有多个 ReactComponent 最初 我认为会有一个具有自己状态的父组件 让我们称之为 GrandPa 并且它将有关其状态的一些信息传递给另一个组件 称之为 Parent 同样 Parent 将他的一些传递给 Child ch
  • 如何使用 @WebMvcTest 并添加我自己的自定义过滤器?

    添加了 Spring Boot 1 4 WebMvcTest连接测试我的应用程序的 Web 切片所需的部件 这太棒了 但是我还想确保我的自定义过滤器和安全代码已连接 以便我可以验证其是否也正常工作 使用时如何添加自定义过滤器 WebMvcT
  • 使用 MySql 和 MVC 3 上的会员资格向注册表单添加更多字段

    我创建了一个基于 asp net MVC 3 和 MySql 的网站 我获得了使用 MySQL NET 连接器的会员资格 因此 使用默认应用程序 您可以使用 mvc 3 的新项目获得一个工作注册表单和一个工作登录表单 但是 我如何在注册表中