ساختن یک جدول از طریق کد نویسی در asp.net core

مراحل ساخت یک جدول در دیتابیس sql از طریق asp.net core

1- ساخت یک کلاس و تعریف فیلدهای جدول: به عنوان مثال کلاس Contact

 public class Contact
    {
        [Key]
        public int ContactId { get; set; }

        [Display(Name = "نام و نام خانوادگی")]
        [Required(ErrorMessage = "لطفا {0} را وارد کنید")]
        [MaxLength(300, ErrorMessage = "{0} نمی تواند بیشتر از {1} کاراکتر باشد.")]
        public string FirstName { get; set; }

        [Display(Name = "موبایل")]
        [Required(ErrorMessage = "لطفا {0} را وارد کنید")]
        [MaxLength(50, ErrorMessage = "{0} نمی تواند بیشتر از {1} کاراکتر باشد.")]
        public string Mobile { get; set; }

        [Display(Name = "ایمیل")]
        [MaxLength(200, ErrorMessage = "{0} نمی تواند بیشتر از {1} کاراکتر باشد.")]
        [EmailAddress(ErrorMessage = "ایمیل وارد شده معتبر نیست")]       
        public string Email { get; set; }

        [Display(Name = "توضیحات پیام ")]
        [Required(ErrorMessage = "لطفا {0} را وارد کنید")]
        public string ContactDescription { get; set; }
    }

2- اضافه کردن کلاس جدول ساخته شده به کلاسی که از DbContext ارث بری کرده است. 

public class EskillContext: DbContext

{

 public DbSet Contacts { get; set; }

}

3- اجرا دستورات زیر در  Package Manager Console

PM> add-migration tbl_contacts

PM> update-database
   

 

 

 

Serializing and Deserializing JSON

سناریو: ارسال یک درخواست به وب سرور (وب سرویس API) و دریافت پاسخ و نمایش مقادیر در کنترلر ASP .Net Core

آشنایی:

serialization و deserialization در داده های JSON چیست؟

سریعترین روش برای تبدیل کردن  آبجکت net. به یک فایل JSON  استفاده از JsonSerializer است. 

JsonSerializer آبجکت های net. را به معادل آن دریک JSON تبدیل می کند. با نگاشت کردن نام property آبجکت به نام property های JSON و مقادیر آن را برای شما کپی می کند.

deserialization عمل معکوس serialization می باشد.

JsonConvert
برای سناریوهای ساده ای که می خواهید به یک رشته JSON تبدیل شوید و از آن استفاده کنید ، روش های ()SerializeObject و ()DeserializeObject در JsonConvert یک بسته بندی آسان برای استفاده از JsonSerializer را ارائه می دهد.

1- ساخت یک آبجکت از کلاس Product و مقداری دهی به property های آبجکت

;()Product product = new Product

;product.Name = "Apple
;(product.ExpiryDate = new DateTime(2008, 12, 28
;product.Price = 3.99M
;{"product.Sizes = new string[] { "Small", "Medium", "Large
;(string output = JsonConvert.SerializeObject(product
فایل JSON تولید شده از کد بالا

}
  ,"Name": "Apple"
  ,"ExpiryDate": "2008-12-28T00:00:00"
  ,"Price": 3.99
  [":Sizes"
    ,"Small"
    ,"Medium"
    "Large"
  ]
{

Serializing and Deserializing JSON

 با کمک newtonsoft

Install Nuget Newtonsoft.Json

;using Newtonsoft.Json

در این سناریو یک درخواست به وب سرور ارسال شده است و پاسخ بازگشتی از وب سرور خوانده شده و با کمک متد DeserializeObject تبدیل به یک آبجکت از نوع کلاس Product شده است. و بدین صورت دسترسی به property های object و مقادیر آن امکان پذیر خئاهد شد.  


ساخت یک درخواست و ارسال آن به وب سرور

 ;"string Url = "https://sandbox-api.domain.com/api/orders/price/calc
           ;(var request = (HttpWebRequest)WebRequest.Create(Url

            ;"request.ContentType = "application/json
            ;"request.Method = "POST
            ;("request.Headers.Add("Authorization", "Bearer " + "Token
            ;("request.Headers.Add("X-Requested-With", "XMLHttpRequest

;(var jsonSer = JsonConvert.SerializeObject(param
            using (var streamWriter = new StreamWriter(request.GetRequestStream
           }
                ;(streamWriter.Write(jsonSer
                ;()streamWriter.Flush
               ;()streamWriter.Close
       
 {
دریافت پاسخ از وب سرور و تبدیل آن به آبجکت net.



;()var response = (HttpWebResponse)request.GetResponse
;(()StreamReader reader = new StreamReader(response.GetResponseStream
Read the content//
;()string result = reader.ReadToEnd
;()reader.Close
;(Product product = JsonConvert.DeserializeObject<Product>(result
;long price=product .Object.Price
 Display the status//
;string status = ((HttpWebResponse)response).StatusDescription

پدیدآورنده: محمد رضا اسدی

منابع: Newtonsoft