sql >> データベース >  >> RDS >> Mysql

VS2017でADO.NETエンティティデータモデルを追加しても何も起こりません

    直接的な答えではありませんが、このバグの回避策として、コア2.xコンソールアプリを作成し、以下のファイルコンテンツをプロジェクトします(現時点ではコア3では機能しません):

    <Project Sdk="Microsoft.NET.Sdk">
    
      <PropertyGroup>
        <OutputType>Exe</OutputType>
        <TargetFramework>netcoreapp2.2</TargetFramework>
      </PropertyGroup>
    
      <ItemGroup>
        <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.2.6">
          <PrivateAssets>all</PrivateAssets>
          <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
        </PackageReference>
        <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.2.6" />
        <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.2.6">
          <PrivateAssets>all</PrivateAssets>
          <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
        </PackageReference>
        <PackageReference Include="MySql.Data.EntityFrameworkCore" Version="8.0.17" />
      </ItemGroup>
    
    </Project>
    

    Microsoft.EntityFrameworkCore.SqlServer Microsoft SQL Server文字列、MySql.Data.EntityFrameworkCoreをスキャフォールディングすることです MySql Server接続文字列をスキャフォールディングします。次に、パッケージマネージャーコンソール(Visual Studio内、2017年と2019年にテスト済み)で次のように入力します:

    Scaffold-DbContext "server=localhost;port=3306;user=USERNAME;password=YOUR_PASSWORD;database=DATABASE_NAME" MySql.Data.EntityFrameworkCore -OutputDir Models -f
    

    それはMySqlでした。 MSSQLタイプの場合:

    Scaffold-DbContext "Server=SERVER_ADDRESS;Database=DATABASE_NAME;user=USERNAME; password=YOUR_PASSWORD;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -f
    

    これにより、コンテキストモデルとそれを含むクラスが生成されるため、最終的にコアアプリでデータベースを最初に使用できるようになります(はい、コアに移行する時間です)。



    1. 複数のテーブルへのデータの挿入PHPMySQL

    2. スレッドメインの例外org.hibernate.MappingException:不明なエンティティ

    3. PerconaXtraDBクラスターまたはMariaDBクラスターのクラスター間レプリケーションを構成する方法

    4. PL/pgSQLを使用してPostgreSQLのレコードとして複数のフィールドを返します