1950
در این مطلب در مورد استفاده از چند پروژه بودن یک پروژه mvc توضیح دادیم با اینحال بهتر بود Connectionstring رادر پروژه Modal قرار دهم
برای همین این مطالب به پروژه اضافه کردم در قسمت تعریف dbcontext این کدها رو اضافه کردم
public class ApiContextFactory : IDesignTimeDbContextFactory<UniverContext>
{
public UniverContext CreateDbContext(string[] args)
{
var builder = new DbContextOptionsBuilder<UniverContext>();
builder.UseSqlServer(
@"Server=11.11.11.11;Database=mydatabase;Integrated Security=false;Initial Catalog=database;User ID=databaseusername;Password=databasepassword;");
return new UniverContext(builder.Options);
}
}
و دستور ایجاد migration را ایجاد کردم
به این خطا برخوردم
The current CSharpHelper cannot scaffold literals of type 'Microsoft.EntityFrameworkCore.Metadata.Internal.DirectConstructorBinding'. Configure your services to use one that can.
برای همین لازم بود تا فایل .csproj مربوط به پروژه modal را بررسی کنم و این رفرنسها حتما اضافه شده باشد.
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Identity" Version="2.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="2.1.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer.Design" Version="1.1.6" />
</ItemGroup>