public async Task<IHttpActionResult> Post(SiteLeaveMessage m) { if (!ModelState.IsValid) return BadRequest(ModelState); m.CreateTime = System.DateTimeOffset.Now; m = db.SiteLeaveMessages.Add(m); await db.SaveChangesAsync(); return Created<SiteLeaveMessage>(m); }
public async Task <IHttpActionResult> Post(SiteLeaveMessage m) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } m.CreateTime = System.DateTimeOffset.Now; m = db.SiteLeaveMessages.Add(m); await db.SaveChangesAsync(); return(Created <SiteLeaveMessage>(m)); }
public async Task<IHttpActionResult> Put(SiteLeaveMessage putModel) { var m = await db.SiteLeaveMessages.FindAsync(putModel.Id); if (m == null) return NotFound(); else { m.Deleted = putModel.Deleted; m.Content = putModel.Content; m.UpdateBy = User.Identity.GetUserId(); m.UpdateTime = DateTimeOffset.Now; if (!ModelState.IsValid) return BadRequest(ModelState); await db.SaveChangesAsync(); return Updated(m); } }
public async Task <IHttpActionResult> Put(SiteLeaveMessage putModel) { var m = await db.SiteLeaveMessages.FindAsync(putModel.Id); if (m == null) { return(NotFound()); } else { m.Deleted = putModel.Deleted; m.Content = putModel.Content; m.UpdateBy = User.Identity.GetUserId(); m.UpdateTime = DateTimeOffset.Now; if (!ModelState.IsValid) { return(BadRequest(ModelState)); } await db.SaveChangesAsync(); return(Updated(m)); } }
protected override void Seed(Magicodes.Models.Mvc.AppDbContext context) { #region 添加用户和角色 var store = new AppUserStore(context); var userManager = new UserManager <AppUser, string>(store); var roleManager = new RoleManager <AppRole>(new AppRoleStore(context)); var adminRole = new AppRole() { Id = "{74ABBD8D-ED32-4C3A-9B2A-EB134BFF5D91}", Name = "Admin", CreateTime = DateTime.Now, Deleted = false }; if (!roleManager.RoleExists(adminRole.Name)) { roleManager.Create(adminRole); } var user = new AppUser { Id = "{B0FBB2AC-3174-4E5A-B772-98CF776BD4B9}", UserName = "******", Email = "*****@*****.**", EmailConfirmed = true, Deleted = false, DisplayName = "管理员", IsActive = true, CreateTime = DateTimeOffset.Now }; if (!userManager.Users.Any(p => p.Id == user.Id)) { var result = userManager.Create(user, "123456abcD"); if (result.Succeeded) { userManager.AddToRole(user.Id, adminRole.Name); } } var magicodes = new AppUser { Id = "{84389DCE-AE1F-47A3-8C42-15058B6B4CCB}", UserName = "******", Email = "*****@*****.**", EmailConfirmed = true, Deleted = false, DisplayName = "Magicodes.NET", IsActive = true, CreateTime = DateTimeOffset.Now }; if (!userManager.Users.Any(p => p.Id == magicodes.Id)) { var result = userManager.Create(magicodes, "123456abcD"); } #endregion #region 添加角色菜单 var admin = userManager.FindById(user.Id); var role = roleManager.FindById(adminRole.Id); context.MenuLinks.ToList().ForEach(item => { if (!item.Roles.Any(p => p.Id == role.Id)) { item.Roles.Add(role); } }); context.SaveChanges(); #endregion #region 添加留言测试消息 for (int i = 0; i < 100; i++) { var siteLeaveMessage = new SiteLeaveMessage() { Id = i, Content = "网站留言测试内容" + i, CreateTime = DateTimeOffset.Now, CreateBy = magicodes.Id, Deleted = false, }; context.SiteLeaveMessages.AddOrUpdate(siteLeaveMessage); } #endregion #region 添加版本历史信息 var all = from c in context.PublishVersions select c; context.PublishVersions.RemoveRange(all); var publishVersion_1 = new Magicodes.Models.Mvc.Models.PublishVersion() { Title = "Magicodes 1.0.0.0 Beta 版", Content = "<p>测试版本,由于精力有限,尚有很多不足之处。此版目前只针对团队成员开放。</p><ul> <li>后台框架已经基本完成,包括插件式架构、路由系统、WebAPI和OData、事件管理(待完善)、性能监控(待完善)、配置管理。</li> <li>前端UI基本规范,但是存在不少细节问题。</li> <li>下一版本计划支持声明式认证以及MVC等功能。</li> </ul>", CreateTime = DateTimeOffset.Now, CreateBy = magicodes.Id, Deleted = false, }; context.PublishVersions.AddOrUpdate(publishVersion_1); var publishVersion_2 = new Magicodes.Models.Mvc.Models.PublishVersion() { Title = "Magicodes 1.0.0.1 Beta 版", Content = "<p>测试版本。主要修复了前端细节问题。</p><ul> <li>主要修复了前端UI的若干问题。具体内容敬请期待后面的博文介绍。</li> </ul>", CreateTime = DateTimeOffset.Now, CreateBy = magicodes.Id, Deleted = false, }; context.PublishVersions.AddOrUpdate(publishVersion_2); var publishVersion_3 = new Magicodes.Models.Mvc.Models.PublishVersion() { Title = "Magicodes 1.0.0.2 Beta 版(New)", Content = "<p>测试版本。具体请查看http://www.cnblogs.com/codelove/p/4058433.html。</p><ul> <li> 1. 架构多次重构,甚至核心模块多次推倒重来。 </li> <li> 2. 架构已支持MVC,不过却暂时放弃了WebForm,当然也有可能永久放弃WebForm,毕竟我目前只是一个人在战斗,兼容两套时间精力都极为有限。 </li> <li> 3. 引入了T4,已支持基于T4模板的代码生成。 </li> <li> 4. 已支持SignalR。 </li> <li> 5. 已支持ASP.NET Identity以及集成OAuth(Microsoft、QQ、Google…),暂时移除了对Form验证的支持。 </li> <li> 6. 支持WebAPI和Odata。 </li> <li> 7. 前端框架初成,支持响应式布局以及MVVM模式和模块化加载。 </li> <li> 8. 其他 </li> 具体请查看http://www.cnblogs.com/codelove/p/4058433.html。 </ul>", CreateTime = DateTimeOffset.Now, CreateBy = magicodes.Id, Deleted = false, }; context.PublishVersions.AddOrUpdate(publishVersion_3); #endregion }
protected override void Seed(Magicodes.Models.Mvc.AppDbContext context) { #region 添加用户和角色 var store = new AppUserStore(context); var userManager = new UserManager <AppUser, string>(store); var roleManager = new RoleManager <AppRole>(new AppRoleStore(context)); var adminRole = new AppRole() { Id = "{74ABBD8D-ED32-4C3A-9B2A-EB134BFF5D91}", Name = "Admin" }; if (!roleManager.RoleExists(adminRole.Name)) { roleManager.Create(adminRole); } var user = new AppUser { Id = "{B0FBB2AC-3174-4E5A-B772-98CF776BD4B9}", UserName = "******", Email = "*****@*****.**", EmailConfirmed = true, Deleted = false, UserNickName = "管理员", IsActive = true, CreateTime = DateTimeOffset.Now }; if (!userManager.Users.Any(p => p.Id == user.Id)) { var result = userManager.Create(user, "123456abcD"); if (result.Succeeded) { userManager.AddToRole(user.Id, adminRole.Name); } } var magicodes = new AppUser { Id = "{84389DCE-AE1F-47A3-8C42-15058B6B4CCB}", UserName = "******", Email = "*****@*****.**", EmailConfirmed = true, Deleted = false, UserNickName = "Magicodes.NET", IsActive = true, CreateTime = DateTimeOffset.Now }; if (!userManager.Users.Any(p => p.Id == magicodes.Id)) { var result = userManager.Create(magicodes, "123456abcD"); } #endregion #region 添加角色菜单 var admin = userManager.FindById(user.Id); #region 菜单基础数据 var menuList = new List <MenuLink>() { new MenuLink() { BadgeRequestUrl = null, Href = "/Admin/Index/Dashboard", IconCls = "fa fa-tachometer", Id = Guid.Parse("01613921-A4E0-4520-A899-3E80F11AA1B6"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = null, Text = "仪表盘", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now }, new MenuLink() { BadgeRequestUrl = null, Href = string.Empty, IconCls = "fa fa-cog", Id = Guid.Parse("C3F49306-FD9F-4D71-9D10-931D269A6136"), isShowBadge = true, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = null, Text = "系统管理", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now }, new MenuLink() { BadgeRequestUrl = null, Href = "/Admin/Roles/Index", IconCls = "fa fa-users", Id = Guid.Parse("7E2FD9CD-A13A-4FBE-931F-D9EE36CC7081"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = Guid.Parse("C3F49306-FD9F-4D71-9D10-931D269A6136"), Text = "角色管理", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now }, new MenuLink() { BadgeRequestUrl = null, Href = "/", IconCls = "fa fa-user", Id = Guid.Parse("{C449826F-FE83-4015-A2F7-C78DB00F75BA}"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = Guid.Parse("C3F49306-FD9F-4D71-9D10-931D269A6136"), Text = "用户管理", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now }, new MenuLink() { BadgeRequestUrl = null, Href = string.Empty, IconCls = "fa fa-th", Id = Guid.Parse("{A966D7B7-9D14-479B-BF93-321C7D9479A4}"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = Guid.Parse("C3F49306-FD9F-4D71-9D10-931D269A6136"), Text = "菜单管理", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now }, new MenuLink() { BadgeRequestUrl = null, Href = "/Admin/Config/SiteConfigInfo", IconCls = "fa fa-wrench", Id = Guid.Parse("{965E971E-FE11-4F4D-BBD4-74A118C3781E}"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = Guid.Parse("C3F49306-FD9F-4D71-9D10-931D269A6136"), Text = "站点设置", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now }, new MenuLink() { BadgeRequestUrl = null, Href = "/Admin/Config/MailConfigInfo", IconCls = "fa fa-wrench", Id = Guid.Parse("{5AD76DA1-64C6-4508-92E5-A6582D0DC543}"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = Guid.Parse("C3F49306-FD9F-4D71-9D10-931D269A6136"), Text = "邮箱信息配置", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now } , new MenuLink() { BadgeRequestUrl = null, Href = "/Admin/Config/AdminSiteConfigInfo", IconCls = "fa fa-wrench", Id = Guid.Parse("{29E55E15-F093-43D5-A072-8E71F9CE0A7C}"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = Guid.Parse("C3F49306-FD9F-4D71-9D10-931D269A6136"), Text = "后台信息配置", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now } , new MenuLink() { BadgeRequestUrl = null, Href = "/Admin/Config/SystemConfigInfo", IconCls = "fa fa-wrench", Id = Guid.Parse("{2754E331-3F36-47E8-BE66-22B1E10BAD2C}"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = Guid.Parse("C3F49306-FD9F-4D71-9D10-931D269A6136"), Text = "应用程序配置", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now }, new MenuLink() { BadgeRequestUrl = null, Href = "/Admin/SiteLeaveMessage", IconCls = "fa fa-wrench", Id = Guid.Parse("{8328D250-65A7-49BD-8CCC-8903A50F23A8}"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = Guid.Parse("C3F49306-FD9F-4D71-9D10-931D269A6136"), Text = "站点留言管理", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now }, #region 产品发布信息管理 new MenuLink() { BadgeRequestUrl = null, Href = "/", IconCls = "fa fa-tag", Id = Guid.Parse("{8F1C49E6-DF79-4DEA-87AE-B825C6C4B563}"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = null, Text = "产品管理", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now }, new MenuLink() { BadgeRequestUrl = null, Href = "/", IconCls = "", Id = Guid.Parse("{1C489516-5DF9-4BEE-B268-6B4221687B0D}"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = Guid.Parse("{8F1C49E6-DF79-4DEA-87AE-B825C6C4B563}"), Text = "Nuget包管理", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now }, new MenuLink() { BadgeRequestUrl = null, Href = "/Admin/PublishVersion", IconCls = "", Id = Guid.Parse("{E975C387-388F-4D5C-9471-7E143EE39D66}"), isShowBadge = false, MenuBadgeType = MenuBadgeTypes.FromChildrenCount, ParentId = Guid.Parse("{8F1C49E6-DF79-4DEA-87AE-B825C6C4B563}"), Text = "产品发布版本管理", TextCls = string.Empty, IsDelete = false, UpdateBy = admin, UpdateTime = DateTime.Now } #endregion }; #endregion context.MenuLinks.AddOrUpdate(p => p.Id, menuList.ToArray()); context.SaveChanges(); var role = roleManager.FindById(adminRole.Id); context.MenuLinks.ToList().ForEach(item => { if (!item.Roles.Any(p => p.Id == role.Id)) { item.Roles.Add(role); } }); context.SaveChanges(); #endregion #region 添加留言测试消息 for (int i = 0; i < 100; i++) { var siteLeaveMessage = new SiteLeaveMessage() { Id = i, Content = "网站留言测试内容" + i, CreateTime = DateTimeOffset.Now, CreateBy = magicodes.Id, Deleted = false, }; context.SiteLeaveMessages.AddOrUpdate(siteLeaveMessage); } #endregion #region 添加版本历史信息 var all = from c in context.PublishVersions select c; context.PublishVersions.RemoveRange(all); var publishVersion_1 = new Magicodes.Models.Mvc.Models.PublishVersion() { Title = "Magicodes 1.0.0.0 Beta 版", Content = "<p>测试版本,由于精力有限,尚有很多不足之处。此版目前只针对团队成员开放。</p><ul> <li>后台框架已经基本完成,包括插件式架构、路由系统、WebAPI和OData、事件管理(待完善)、性能监控(待完善)、配置管理。</li> <li>前端UI基本规范,但是存在不少细节问题。</li> <li>下一版本计划支持声明式认证以及MVC等功能。</li> </ul>", CreateTime = DateTimeOffset.Now, CreateBy = magicodes.Id, Deleted = false, }; context.PublishVersions.AddOrUpdate(publishVersion_1); var publishVersion_2 = new Magicodes.Models.Mvc.Models.PublishVersion() { Title = "Magicodes 1.0.0.1 Beta 版", Content = "<p>测试版本。主要修复了前端细节问题。</p><ul> <li>主要修复了前端UI的若干问题。具体内容敬请期待后面的博文介绍。</li> </ul>", CreateTime = DateTimeOffset.Now, CreateBy = magicodes.Id, Deleted = false, }; context.PublishVersions.AddOrUpdate(publishVersion_2); var publishVersion_3 = new Magicodes.Models.Mvc.Models.PublishVersion() { Title = "Magicodes 1.0.0.2 Beta 版(New)", Content = "<p>测试版本。具体请查看http://www.cnblogs.com/codelove/p/4058433.html。</p><ul> <li> 1. 架构多次重构,甚至核心模块多次推倒重来。 </li> <li> 2. 架构已支持MVC,不过却暂时放弃了WebForm,当然也有可能永久放弃WebForm,毕竟我目前只是一个人在战斗,兼容两套时间精力都极为有限。 </li> <li> 3. 引入了T4,已支持基于T4模板的代码生成。 </li> <li> 4. 已支持SignalR。 </li> <li> 5. 已支持ASP.NET Identity以及集成OAuth(Microsoft、QQ、Google…),暂时移除了对Form验证的支持。 </li> <li> 6. 支持WebAPI和Odata。 </li> <li> 7. 前端框架初成,支持响应式布局以及MVVM模式和模块化加载。 </li> <li> 8. 其他 </li> 具体请查看http://www.cnblogs.com/codelove/p/4058433.html。 </ul>", CreateTime = DateTimeOffset.Now, CreateBy = magicodes.Id, Deleted = false, }; context.PublishVersions.AddOrUpdate(publishVersion_3); #endregion }