PDA

View Full Version : سوال: ارسال اطلاعات از WinForm به webAPI



Mostafa_
سه شنبه 20 تیر 1402, 16:58 عصر
با سلام خدمت دوستان
من یه مشکل دارم
برنامه نویسی رو تازه شروع کردم
یه کلاس لایبرری درست کردم که توش ی7 تا مقدار هست
یه ویندوز فرم هم دارم که لایبرریم رو بهش رفرنس دادم

یه web API هم دارم که از طریق ویندوز فرم باید مقدر های لایبرریم رو بهش پاس بدم،،، تا توی لیست ذخیره کنه !!!!

لیست in memory هست

میشه لطفا کمکم کنین باید چکار کنم !!

ShayanFiroozi
سه شنبه 20 تیر 1402, 23:52 عصر
سلام ،

نحوه سوال پرسیدن شما کمی گُنگ هستش ،
سوال خیلی کلیه ، در واقع شما دارین یه بخش کاملی از یک پروژه رو درخواست میکنین !

بهتره خودتون پروژه رو پیش ببرین و هر جا به سوال برخوردین با ارسال قطعه کد مطرح کنین

پرستو پارسایی
چهارشنبه 21 تیر 1402, 00:04 صبح
برای ارسال مقادیر لایبرری از ویندوز فرم به وب API و ذخیره کردن آنها در لیست in-memory، می‌توانید از یک روش ساده از جمله HTTP POST request استفاده کنید. برای این کار، می‌توانید از کتابخانه‌های موجود در C#‎‎‎‎‎‎ مانند System.Net.Http استفاده کنید.

ابتدا، در کلاس ویندوز فرم خود یک شی از کلاس لایبرری را ایجاد کنید و مقادیر مورد نیاز را به آن اختصاص دهید. سپس، می‌توانید از کلاس HttpClient در کتابخانه System.Net.Http استفاده کنید تا درخواست HTTP POST را به وب API ارسال کنید. به عنوان مثال:




using System.Net.Http;
using System.Text.Json;
using System.Threading.Tasks;


// در کلاس ویندوز فرم
private readonly LibraryClass library = new LibraryClass();


// در رویداد کلیک دکمه ارسال در ویندوز فرم
private async void SendDataButton_Click(object sender, EventArgs e)
{
// ایجاد یک شی از کلاس HttpClient
using var client = new HttpClient();


// تبدیل شی لایبرری به یک رشته JSON
var json = JsonSerializer.Serialize(library);


// تنظیمات درخواست HTTP POST
var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync("http://example.com/api/library", content);


// بررسی پاسخ دریافتی از وب API
if (response.IsSuccessStatusCode)
{
// پردازش پاسخ دریافتی از وب API
var responseContent = await response.Content.ReadAsStringAsync();
// ...
}
else
{
// پردازش خطاهای دریافتی از وب API
// ...
}
}





در مثال بالا، کلاس HttpClient به عنوان یک شی استاتیک ایجاد شده است. همچنین ، تنظیمات درخواست HTTP POST شامل تنظیمات مربوط به محتوا (content) و نوع آن (application/json) نیز انجام شده است. در پاسخ دریافتی از وب API نیز می‌توانید خطاها و پاسخ‌های مورد انتظار را بررسی کنید.

Mostafa_
چهارشنبه 21 تیر 1402, 10:01 صبح
تمام چیزی که بهم گفتن همینه !!!!

Mostafa_
چهارشنبه 21 تیر 1402, 10:05 صبح
ممنون از شما