دسته بندی ها
23:33 1402/09/09

استفاده از دیتابیس موجود در پروژه جدید در Asp.net core

مشخصات سوال کننده :
کاربر : Mostafahemat     امتیاز کاربر : 5     رتبه کاربر : 110
دسته بندی : Asp.net Core

به این سوال امتیاز بدهید    1
تعداد بازدید این سوال : 1350
هوش مصنوعی

پاسخ هوش مصنوعی

بله، شما می توانید از دیتابیس موجود در پروژه ی ویندوزی خود در ASP.NET Core استفاده کنید. برای این کار مراحل زیر را دنبال کنید:

1. اطمینان حاصل کنید که دیتابیس شما قابل دسترسی است و ارتباط با آن از طریق کد ASP.NET Core امکان پذیر است.
2. در پروژه ی ASP.NET Core خود، نیاز دارید به پکیج هایی همچون Microsoft.EntityFrameworkCore.SqlServer و Microsoft.EntityFrameworkCore.Tools اضافه کنید.
3. در فایل appsettings.json خود، رشته اتصال دیتابیس را مشخص کنید:

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=your_server;Database=your_database;User Id=your_username;Password=your_password;"
  }
}

4. سپس یک کلاس DbContext ایجاد کنید که مدل های شما را در دیتابیس مدیریت کند:

using Microsoft.EntityFrameworkCore;

public class YourDbContext : DbContext
{
    public YourDbContext(DbContextOptions options) : base(options) { }

    public DbSet YourModels { get; set; }
}

5. در Startup.cs، DbContext را ثبت کنید:

public void ConfigureServices(IServiceCollection services)
{
    services.AddDbContext(options =>
        options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
}

پس از انجام این مراحل، شما قادر به استفاده از داده های دیتابیس ویندوزی خود در پروژه ی ASP.NET Core خواهید بود.

به این پاسخ امتیاز بدهید    0
امتیاز: - رتبه: -
پاسخ دهنده : hamid_b 01:41 1402/09/10

این امکان وجود داره اما بسختی !!!

 

ببینید در ویندوز از Entity Framework dbfirst استفاده میشه. اما در وب از روش Code First

اگر شما قصد داشته باشید که دیتابیسی که از قبل موجود هست رو استفاده کنید باید روش db first استفاده کنید و کلا روش کارتون دیگه متفاوت میشه و بسیاری از قابلیت های Core و Identity رو از دست می دید.

به عنوان مثال خود Identity جداول مخصوص خودش رو در روش code first میسازه و بسیاری از قابلیت ها در این جداول هست. اما اگر دیتابیس شما از قبل موجود باشه دیگه این ساختارها توش وجود نداره.

بنابراین توصیه میکنم دیتابیس رو مجددا مشابه با دیتابیس قبلی خودتون اما با روش code first ایجاد کنید.

ویرایش شده در جمعه 10 آذر 1402 ساعت 01:41:59
به این پاسخ امتیاز بدهید    1
امتیاز: 518 رتبه: 4
پاسخ دهنده : taqech 18:26 1402/10/02

برای این کار باید دومرحله را طی کنید:

اول: بانک اطلاعات رو از روی ویندوز به روی سرور تحت وب منتقل کنید. (راه های مختلفی برای این کار هست)

دوم: در کانکشن استرینگ برنامه تحت وب، این بانک اطلاعاتی رو معرفی کنید: 

Data base=YourDataBaseName;

به این پاسخ امتیاز بدهید    0
امتیاز: 10 رتبه: 70
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود