はい、必要なときに接続を開くだけです。 だから、私はあなたのMySQLデータベース接続でこのような何か
public class MySqlInitializer : IDatabaseInitializer<ApplicationDbContext>
{
public void InitializeDatabase(ApplicationDbContext context)
{
if (!context.Database.Exists())
{
// if database did not exist before - create it
context.Database.Create();
}
else
{
// query to check if MigrationHistory table is present in the database
var migrationHistoryTableExists = ((IObjectContextAdapter)context).ObjectContext.ExecuteStoreQuery<int>(
string.Format("SELECT COUNT(*) FROM information_schema.tables WHERE table_schema = '{0}' AND table_name = '__MigrationHistory'",
"[Insert your database schema here - such as 'users']"));
// if MigrationHistory table is not there (which is the case first time we run) - create it
if (migrationHistoryTableExists.FirstOrDefault() == 0)
{
context.Database.Delete();
context.Database.Create();
}
}
}}
を行なったし、あなたのApplicationDbContextクラスは今、この
public class ApplicationUser : IdentityUser{}
public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
static ApplicationDbContext()
{
Database.SetInitializer(new MySqlInitializer());
}
public ApplicationDbContext()
: base("DefaultConnection")
{
}
}
ようになると仮定し、データベースからいくつかのクエリを行うには、あなたが作成する必要がありますApplicationDbContext
次の質問「モデルに実装する方法はありますか?」はい、ビューモデルを作成する必要があります。
public class ItemProduct
{
public int Id {get; set;};
public string Name {get; set;};
}
したがって、商品テーブルがデータベースに存在し、その商品データベースでクエリを実行できるとします。
public class HomeController : Controller
{
ApplicationDbContext context = new ApplicationDbContext();
public ActionResult AnyName()
{
List<ItemProduct> lstProducts = new List<ItemProduct>();
var getProducts = (from p in context.Products
select p).ToList();
foreach(var item in getProducts)
{
ItemProduct pro = new ItemProduct()
{
pro.Id = item.Id,
pro.Name = item.Name
};
lstProducts.Add(pro);
}
// So, you have all your Products in ItemProduct Class list.
// Now, return lstProducts to your View to show it on front end
}
}
これは、あなたの質問:)
に答える希望私はそれを試してみて、私はあなたが知っているだろうが、それは次のステップのように見えます。あなたは文脈でpから何を説明することができますか?プロダクトはpを選択しますか?すべてのテーブルを選択しますか? –
ここ**商品**はデータベースのテーブル名です。その表からすべての列を選択します。 LINQクエリを処理する必要があります。あなたはデータベースに列名を持つ任意のテーブルを指定できますか?だから、私はあなたをより良く説明することができます。 –
これはLinqのクエリです。私はそれらの上で作業する必要があります、私の側にあることを心配しないでください。ありがとう@ジャワン・シン! –