我是EF的新手,我正在尝试使用VS 2017,.NET Core 2.0和EF 2.0创建一个简单的测试解决方案,但我无法通过添加迁移来创建迁移文件夹和初始迁移.
我创建了一个名为Driver的解决方案,其中包含两个.Net Core类库项目:
Driver.Data
Driver.Domain
Run Code Online (Sandbox Code Playgroud)
Driver.Data中安装了以下软件包:
Microsoft.EntityFrameworkCore.SqlServer
Microsoft.EntityFrameworkCore.Tools
Run Code Online (Sandbox Code Playgroud)
Driver.Data有一个名为Driver.Context的 cs文件:
using Driver.Domain;
using Microsoft.EntityFrameworkCore;
namespace Driver.Data
{
public class DriverContext : DbContext
{
public DbSet<Company> Companies { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer(
"Server=(localdb)\\mssqllocaldb; Database=Driver; Trusted_Connection=True;"
);
}
}
}
Run Code Online (Sandbox Code Playgroud)
Driver.Domain有一个名为Company.cs的 cs文件:
namespace Driver.Domain
{
public class Company
{
public int Id { get; set; }
public string Name { get; set; } …
Run Code Online (Sandbox Code Playgroud) VS将生成(并覆盖)web.config文件,作为发布到IIS的一部分.我需要在文件中包含各种项目(例如扩展文件上传最大大小限制,重定向到HTTPS等).我目前不得不在每次发布后将内容复制并粘贴到文件中.
有没有办法定义Visual Studio在发布IIS的.NET Core 2 Web应用程序时生成的web.config文件的内容?
我在项目中使用Automapper的(8.0)DI模式,并希望在Entity Framework Core实体查询中开始使用ProjectTo。
这是我设法开始工作的示例:
public async Task<IEnumerable<SomeViewModel>> GetStuffAsync() {
return await _dbContext.SomeEntity
.ProjectTo<SomeViewModel>(_mapper.ConfigurationProvider)
.ToListAsync();
}
Run Code Online (Sandbox Code Playgroud)
上面的调用返回了所有期望的记录,但是它既需要在存储库的构造函数中注入IMapper,也需要对AutoMapper.QueryableExtensions的Using引用。
我找到了两个版本的AutoMapper文档,它们似乎提供了冲突的信息。
这些文档https://automapperdocs.readthedocs.io/en/latest/Dependency-injection.html声明以下内容:
使用DI与使用IQueryable.ProjectTo扩展方法实际上是互斥的。请改用IEnumerable.Select(_mapper.Map).ToList()。
这些文档http://docs.automapper.org/en/stable/Dependency-injection.html声明如下:
从8.0开始,您可以使用IMapper.ProjectTo。对于较旧的版本,您需要将配置传递给扩展方法IQueryable.ProjectTo(IConfigurationProvider)。
按照第一个文档的示例,我将查询转换为此:
public IEnumerable<SomeViewModel> GetStuff() {
return _dbContext.SomeEntity
.Select(_mapper.Map<SomeViewModel>)
.ToList();
}
Run Code Online (Sandbox Code Playgroud)
但是,该方法返回0条记录(前一个返回所有记录),并且扩展的Select不支持将方法从Async转换为sync,因为ToListAsync()。显然我缺少了一些东西。另外,我不确定这是否是正确的技术,因为第二组文档讨论了针对版本8.0使用IMapper.ProjectTo而不将配置传递给扩展方法。我怎么做?
我无法在新的TurboTable for PrimeNG中使用autoLayout。无论内容和浏览器的宽度如何,所有列的宽度均相同。
我试着[autoLayout]="true"
和autoLayout="true"
。都不行。
我正在使用最新的PrimeNG版本(5.2.4)
这是我的html:
<p-card>
<p-header>
<div style="padding: 15px; padding-bottom: 0px">
<button pButton
type="button"
label="Add New"
class="ui-button-info"
icon="fa-plus"
[routerLink]="['/users/edit', 0]"></button>
</div>
</p-header>
<p-table [columns]="cols"
[value]="users"
[autoLayout]="true"
[(selection)]="selectedUser"
selectionMode="single"
[style]="{'height':'600px'}"
[scrollable]="true"
scrollHeight="580px"
[rows]="20"
(onRowSelect)="handleOnUsersRowSelect($event)">
<ng-template pTemplate="header" let-columns>
<tr>
<th *ngFor="let col of columns">
{{col.header}}
</th>
</tr>
</ng-template>
<ng-template pTemplate="body" let-rowData let-columns="columns">
<tr [pSelectableRow]="rowData">
<td *ngFor="let col of columns" style="text-align: center">
{{col.field == 'isActive' ? (rowData[col.field] ? 'Yes' : 'No'): rowData[col.field] }}
</td>
</tr>
</ng-template>
</p-table> …
Run Code Online (Sandbox Code Playgroud) 我想使用自动映射器来展平从 Entity Framework Core 返回的实体层次结构列表。
这是我的实体:
public class Employee {
public int Id { get; set; }
[Required]
public string Name { get; set; }
public double? PayRateRegular { get; set; }
public double? PayRateLoadedRegular { get; set; }
public double? GMOutput { get; set; }
public string EmployeeType { get; set; }
//List of CommissionDetails where this employee is the consultant
public IEnumerable<CommissionDetail> CommissionDetailConsultants { get; set; } = new List<CommissionDetail>();
}
public class Project {
public int Id …
Run Code Online (Sandbox Code Playgroud) 我已将我的项目从旧的Visual Studio SPA Angular模板转换为最新的模板.我还将项目从Angular 5转换为Angular 6,从webpack转换为angular-cli.后端正在运行.Net Core 2.1.1.
它在dev中都很好用但是在部署到IIS时我遇到了500错误.最新的主机软件包安装在IIS中并运行正常.我可以部署旧版本的应用程序,它运行良好但新的拒绝合作.
我也没有看到日志文件试图追踪它.
有什么想法吗?
这是我的angular.json
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"ClientApp": {
"root": "",
"sourceRoot": "src",
"projectType": "application",
"prefix": "app",
"schematics": {
"@schematics/angular:component": {
"styleext": "scss"
}
},
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"outputPath": "dist/ClientApp",
"index": "src/index.html",
"main": "src/main.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "src/tsconfig.app.json",
"assets": [
"src/favicon.ico",
"src/assets"
],
"styles": [
"node_modules/font-awesome/css/font-awesome.min.css",
"node_modules/primeng/resources/primeng.min.css",
"node_modules/primeicons/primeicons.css",
"node_modules/videogular2/fonts/videogular.css",
"src/assets/theme/theme-blue.scss",
"src/styles.scss"
],
"scripts": []
},
"configurations": {
"production": {
"fileReplacements": [ …
Run Code Online (Sandbox Code Playgroud)