PDA

View Full Version : مبتدی: نحوه استفاده از view در سی شارپ به روش linq



kaspian1362
سه شنبه 25 مهر 1396, 23:53 عصر
دوستان سلام
یه ویو در اس کیو ال نسخه اصلی (اس کیو ال منیجمنت) ساختم که اطلاعات 5 جدول رو نمایش میده حالا میخوام تو سی شارپ فراخوانی و با استیمول سافت چاپش کنم
هر چی جستجو کردم در مورد اس کیو ال اکسپرس بود که از دیتا تیبل و دیتا اداپتور استفاده میکردن ولی من اینا رو استفاده نمیکنم.
لطفا با یه کد کوچولو راهنمایی بفرمایید. ممنونم

danialafshari
چهارشنبه 26 مهر 1396, 02:11 صبح
با سلام
اولاً کدنویسی چه با sql server express یا sql server enterprise یا... فرق نداره و فقط کاقیه کانکشن رو تغییر بدید
تفاوتش بعضاً در بین ورژن هاس یا اینکه نوع فیلد ها
برای کار با Linq به روش ساده:
146803
146804
146805
146806
sql ورژن من Express هست که میتونید به شکل زیر برای ورژن های دیگه تغییرش بدید:


connectionString="Data Source=.;Initial Catalog=dbTest;Integrated Security=True"

یک datagridview و button و textbox بزارید
در فرم لود:

private void Form1_Load(object sender, EventArgs e)
{
DataClasses1DataContext DataContext = new DataClasses1DataContext();
dataGridView1.DataSource = DataContext.Persons;
}

برای دکمه:

private void btnView_Click(object sender, EventArgs e)
{
DataClasses1DataContext DataContext = new DataClasses1DataContext();
var query = from c in DataContext.Persons
where c.LastName.Contains(textBox1.Text)
select c;
dataGridView1.DataSource = query;
}

که این میاد فامیلی هایی رو که توی textbox مینویسم جستجو میکنه و توی datagridview نمایش میده (بقول شما view)

بانک بهمراه اسکریپت رو گذاشتم که بانک باید Attach بشه
ولی در کل به سورس نیاز ندارید چون بصورت کامل بالا توضیح دادم

موفق باشید

kaspian1362
جمعه 28 مهر 1396, 10:15 صبح
با سلام
اولاً کدنویسی چه با sql server express یا sql server enterprise یا... فرق نداره و فقط کاقیه کانکشن رو تغییر بدید
تفاوتش بعضاً در بین ورژن هاس یا اینکه نوع فیلد ها
برای کار با Linq به روش ساده:
146803
146804
146805
146806
sql ورژن من Express هست که میتونید به شکل زیر برای ورژن های دیگه تغییرش بدید:


connectionString="Data Source=.;Initial Catalog=dbTest;Integrated Security=True"

یک datagridview و button و textbox بزارید
در فرم لود:

private void Form1_Load(object sender, EventArgs e)
{
DataClasses1DataContext DataContext = new DataClasses1DataContext();
dataGridView1.DataSource = DataContext.Persons;
}

برای دکمه:

private void btnView_Click(object sender, EventArgs e)
{
DataClasses1DataContext DataContext = new DataClasses1DataContext();
var query = from c in DataContext.Persons
where c.LastName.Contains(textBox1.Text)
select c;
dataGridView1.DataSource = query;
}

که این میاد فامیلی هایی رو که توی textbox مینویسم جستجو میکنه و توی datagridview نمایش میده (بقول شما view)

بانک بهمراه اسکریپت رو گذاشتم که بانک باید Attach بشه
ولی در کل به سورس نیاز ندارید چون بصورت کامل بالا توضیح دادم

موفق باشید


ممنونم از راهنماییتون
ولی دوست عزیز منظورم گرید ویو نیست
5 تا جدول دارم که از هر کدوم فیلدهای خاصی رو میخوام واکشی کنم و توی گرید ویو نمایش بدم و چاپ کنم
مثلا توی یکی از جدول ها میزان حضور در کلاس ثبت شده توی یکی دیگه دوره هایی که گذرانده شد و ال آخر
حالا میخوام برای یه نفر یه کارنامه بسازم ک اطلاعاتش رو از توی جدول های مختلف باید بکشم بیرون.
بازم متشکرم که وقت میزارید

juza66
چهارشنبه 24 آبان 1396, 00:10 صبح
سلام

شما ویو رو در اس کیوال ایجاد کردید درست
حالا بعد from نام ویو رو بده، مانند کد اقای افشاری فقط نام ویو رو بده

ژیار رحیمی
چهارشنبه 24 آبان 1396, 11:20 صبح
دوست گرامی طبق راهنمایی های جناب افشاری عمل کنید منتهی View(های) شما در دیتابیس ساخته شده، کافیه همانند Drag کردن جدوال به داخل dbml ویو های ساخته شده را هم اضافه کرد و از طریق Linq دسترسی پیدا کرد. ونتیجه کویری View رو به دیتاتیبل گزارش پاس بده.

NeginZandieh
جمعه 30 آذر 1397, 12:23 عصر
ولی چرا واسه من ویومو نمیشناسه؟
وقتی اسم شیئی که از دیتا کانتکسمو میزنم و دات میزنم، اسم ویومو نمیاره