Tag: aspnetboilerplate

ASP.NET Boilerplate多个数据库和DbContexts

我想使用ASP.NET Boilerplate一次连接到两个数据库。 我按照这个例子: https : //github.com/aspnetboilerplate/aspnetboilerplate-samples/tree/master/MultipleDbContextEfCoreDemo 问题是只有第一个上下文会包含所有的Abp表。 第二个上下文是现有数据库,其上没有任何Abp表。 当我启动网络应用程序时,我得到了这个: System.Data.SqlClient.SqlException: ‘Invalid object name ‘AbpLanguages’.’ 显然它正在寻找第二个上下文中的Abp *表,但它们不存在(并且它们不应该存在)。 那么,拥有多个上下文的正确方法是什么,以便它不会在第二个上下文中查找Abp *表? 更新 我通过修改从模板生成的干净的ASP.NET Boilerplate项目创建了一个示例应用程序。 我已经使用从API模板生成的项目进行了测试,该项目仅使用API​​,并且在那里完美运行。 但是当在生成项目时组合API和前端时,我遇到了在其他上下文中查找Abp *表的问题。 Dropbox: https ://www.dropbox.com/s/19gj8ms0jwz500k/4.0.1.zip ? dl = 0 Github: https : //github.com/FrikkinLazer/MultipleContext.git

在ASP.NET Core中实现OrganizationUnitfilter

在ASP.NET Boilerplate中,有像Tenantfilter这样的内置数据filter,我们可以使用SetTenantId来启用查询特定的tenantId 。 根据官方文档,与EF 6.x不同,它不支持EF Core中的自定义Filter 。 我想知道如何为OrganizationUnitId参数实现类似的filter。 这是我到目前为止所做的: 覆盖CreateFilterExpression : protected override Expression<Func> CreateFilterExpression() { Expression<Func> expression = null; if (typeof(IMayHaveOrganizationUnit).IsAssignableFrom(typeof(TEntity))) { Expression<Func> mayHaveOUFilter = e => ((IMayHaveOrganizationUnit)e).OrganizationUnitId == CurrentOrganizationUnitId || (((IMayHaveOrganizationUnit)e).OrganizationUnitId == CurrentOrganizationUnitId) == IsMayHaveOrganizationUnitFilterEnabled; expression = expression == null ? mayHaveOUFilter : CombineExpressions(expression, mayHaveOUFilter); } expression = expression == null ? base.CreateFilterExpression() […]

如何在ASP.NET Boilerplate中设置社交登录?

我正在尝试通过Googlevalidation用户身份。 我正在使用带有Vue的ASP.NET Core的ABP启动模板。 这是我到目前为止所做的: 我在GoogleAuthProviderApi中创建了一个GoogleAuthProviderApi: using System; using System.Net.Http; using System.Net.Http.Headers; using System.Threading.Tasks; using Microsoft.AspNetCore.Authentication.Google; using Newtonsoft.Json.Linq; namespace Mindbus.MindbooksSEO.Authentication.External.Google { public class GoogleAuthProviderApi : ExternalAuthProviderApiBase { public const string Name = “Google”; public override async Task GetUserInfo(string accessCode) { using (var client = new HttpClient()) { client.DefaultRequestHeaders.UserAgent.ParseAdd(“Microsoft ASP.NET Core OAuth middleware”); client.DefaultRequestHeaders.Accept.ParseAdd(“application/json”); client.Timeout = TimeSpan.FromSeconds(30); […]

禁用SoftDelete for AbpUserRole

默认情况下, AbpUserRole和AbpRole实现ISoftDelete 。 可以禁用它吗? 我试着这样做: [AbpAuthorize(AppPermissions.Pages_Administration_Roles_Delete)] public async Task DeleteRole(EntityDto input) { using (CurrentUnitOfWork.DisableFilter(AbpDataFilters.SoftDelete)) { var role = await _roleManager.GetRoleByIdAsync(input.Id); var users = await UserManager.GetUsersInRoleAsync(role.Name); foreach (var user in users) { CheckErrors(await UserManager.RemoveFromRoleAsync(user, role.Name)); } CheckErrors(await _roleManager.DeleteAsync(role)); } } 虽然在当前工作单元中禁用了filter,但它不起作用。 该实体标记为已删除。

ASP.NET Boilerplate – 为MVC和EF组合构建新项目时出错

我今天刚刚下载了MVC5和EF的免费启动模板。 在打开,恢复所有包然后构建时,我在“核心”项目中得到以下构建错误: 错误CS0508’AppSettingProvider.GetSettingDefinitions(SettingDefinitionProviderContext)’:返回类型必须是’IEnumerable’才能匹配被覆盖的成员’SettingProvider.GetSettingDefinitions(SettingDefinitionProviderContext)’ 错误CS0012“对象”类型在未引用的程序集中定义。 您必须添加对程序集’netstandard,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = cc7b13ffcd2ddd51’的引用。 正如错误消息所示,我添加了对程序集的引用,但是,它产生了许多其他错误。 查看示例项目,他们正在使用APB程序集的v2.1.3并且编译正常。 最新下载的示例使用APB程序集的v3.0.0。 任何有助于实现这一目标的帮助表示赞赏。 提前致谢。