PDA

View Full Version : سوال: معادل GridView در ASP MVC



kahe.mehrdad
چهارشنبه 23 مهر 1393, 13:16 عصر
سلام.
بنده در MVC تازه کارم. قراره یک پروژه را از asp.net webform به MVC منتقل کنم.
توی پروژه قبلی چندین بار از ViewGrid استفاده کردم که به چند تا جدول پایه توی دیتابیس وصل بود. همه اعمال Edit, Add, Delete هم توی سطر های Grid انجام میشد.
توی فروم های MVC راه های متفاوتی را گفته بودند:
http://stackoverflow.com/questions/177275/grid-controls-for-asp-net-mvc
اگر میشه راهنمایی کنید که توی MVC از چه ابزاری (Scaffolding, Jquery Grids) استفاده کنم بهتره؟ اگر امکانش هست مزایای روش ها را هم بفرمایید.
ممنون.

kahe.mehrdad
چهارشنبه 23 مهر 1393, 15:25 عصر
دوستان یعنی تا به حال همچین مشکلی نداشتید شما؟؟؟

hp1361
چهارشنبه 23 مهر 1393, 15:40 عصر
سلام

فکر میکنم JQGrid چیز خیلی خوبی باشه

http://www.dotnettips.info/post/1821/%D8%B5%D9%81%D8%AD%D9%87-%D8%A8%D9%86%D8%AF%DB%8C-%D9%88-%D9%85%D8%B1%D8%AA%D8%A8-%D8%B3%D8%A7%D8%B2%DB%8C-%D8%AE%D9%88%D8%AF%DA%A9%D8%A7%D8%B1-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA-%D8%A8%D9%87-%DA%A9%D9%85%DA%A9-jqgrid-%D8%AF%D8%B1-asp-net-mvc

http://www.dotnettips.info/post/1827/%D9%81%D8%B9%D8%A7%D9%84-%D8%B3%D8%A7%D8%B2%DB%8C-%D9%88-%D9%BE%D8%B1%D8%AF%D8%A7%D8%B2%D8%B4-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA-%D9%BE%D9%88%DB%8C%D8%A7%DB%8C-%D8%A7%D9%81%D8%B2%D9%88%D8%AF%D9%86-%D9%88%DB%8C%D8%B1%D8%A7%DB%8C%D8%B4-%D9%88-%D8%AD%D8%B0%D9%81-%D8%B1%DA%A9%D9%88%D8%B1%D8%AF%D9%87%D8%A7%DB%8C-jqgrid-%D8%AF%D8%B1-asp-net-mvc

rezaei_y
چهارشنبه 23 مهر 1393, 20:40 عصر
دوست عزیز شما علاوه بر jqGrid میتونید با استفاده از یک جدول و حلقه for و صفحه بندی گرید رو ایجاد کنید

RIG000
چهارشنبه 23 مهر 1393, 21:18 عصر
من اصلا web form کار نکردم. اما میتونی تیبل بزنی. بوت استرپ اومده تیبل های مناسب و با responcive ارائه کرده می تونی اینو استفاده کنی. اگه db first کار کنی ظرف چند دقیقه همه ی اینها رو داری . ... حتیforeach از مدل بهت میده و خیلی عالی میتونی list کنی و add و dell و ... رو خیلی خوب برات انجام میده .

kahe.mehrdad
چهارشنبه 23 مهر 1393, 21:49 عصر
دوست عزیز شما علاوه بر jqGrid میتونید با استفاده از یک جدول و حلقه for و صفحه بندی گرید رو ایجاد کنید

دوست من اینجوری واسه sort و edit و delete و insert باید چه شکلی این کارها رو انجام بدم با تیبل؟؟

kahe.mehrdad
چهارشنبه 23 مهر 1393, 21:52 عصر
من اصلا web form کار نکردم. اما میتونی تیبل بزنی. بوت استرپ اومده تیبل های مناسب و با responcive ارائه کرده می تونی اینو استفاده کنی. اگه db first کار کنی ظرف چند دقیقه همه ی اینها رو داری . ... حتیforeach از مدل بهت میده و خیلی عالی میتونی list کنی و add و dell و ... رو خیلی خوب برات انجام میده .
روش شما خوب. اما scaffolding واسه وب سایت خوبه، نرم افزار ما وب سایت نیست، کاربر باید حس دسکتاپ را داشته باشه. یعنی postback های صفحه حتی الامکان کم باشه.

rezaei_y
جمعه 25 مهر 1393, 15:55 عصر
دوست من اینجوری واسه sort و edit و delete و insert باید چه شکلی این کارها رو انجام بدم با تیبل؟؟
پروژه IRIS رو از سایت dotnettips.info دانلود کن توی قسمت مدیریت میتونی به جوابت برسی

sunn789
جمعه 25 مهر 1393, 19:19 عصر
سلام دوست عزیز
ببینید من بادم میاد چیزی حدود 4- 5 جدول رو تست کردم اما اخرش برگشتم همون جدول پیشفرض MVC خوب من نقض نمیکنم استفاده از کمپوننتها رو اما اگر درگیر اینها بشیم کلی عقب میافتید و تا بخواهید یکی شون رو یاد بگیریم ویژال استادیو و کد نویسی ماکروسافت عوض میشه همینجور که تا به حال دیدن ، ولی برای انکه میخواهید حس نرم افزار های دسکتاپ رو بدین به کاربر باید بیشتر با Jquery کارکنید و به تازگی هم کلی فریم و رک و یا وتد و یا هر اسم دیگه اضافه شده و میبینید که هر کشی هم با یکیش تبهر داره ،
و اما برای اینکه من هم همین دردسر ور داشتم به تازگی با devExpress کار کردم و اگر از تمهای آون استفاده کنی خیلی شبیه نرم افزارهای دسکتاپ میشه و استفاده از جدول و کلی چیز دیگه توش راحت تره و چند روز قبل هم توی سایت یکی از دوستان بود دیدمنمونه کاری با tekerik انجام داده که عالی بد و خودم هم دارم کوچ میکنم به telerik (هر چند ایران رو تحریم کرده ) اما حجم Dll ها و سرعت لودش از DevExpress بیشتره ، و این که خدمتتون میگم تا الانه و ممکنه فردا به نتیجه ای دیگر برسم
اها در مورد استفاده از جدول ها حواستون به قابلیت نمایش د رموبایل یا همون -اسمش یادم رفته - باشید چون من یه مدت روی یکی از این ها کار کردم و اخرش دیدم توی موبایل خوب نمایش داده نمیشه

hakim22
شنبه 26 مهر 1393, 09:27 صبح
در ASP MVC می توانید از jqGrid استفاده کنید. فقط مطالعه ی دموها لازم است و روش کار با آن خیلی ساده نیست.

بهترین گزبنه از نظر من استفاده از جداول ساده و بعد پیاده سازی MVVM با استفاده از Knockout است. که این هم البته نیاز به یادگیری مکانیزم Knockout دارد.

کلا تلاش برای شبیه کردن یک صفحه ی وب به اینترفیس ویندوز چندان جالب نیست. در صفحات وب روشهای ساده ای وجود دارد که شما می توانید با بهره گیری از آنها قابلیت های مورد نظر را مانند جستجو ، مرتب سازی و فیلترینگ پیاده کنید.

اگر بعدا احساس کردید بهتر است که گرید کاملا داینامیک و همانند گریدهای ویندوز عمل کند می توانید یکی از روش های بالا را استفاده کنید.

alikarimi64
چهارشنبه 07 آبان 1393, 09:09 صبح
Hi There

In our application we programatically build a set two child grids in a parent gridcontrol to provide the master-detail functionality. and we got something wrong which there is some relation between two childs gridview in which if there is no data in 1st child the 2nd child doesn't show nothing even in data base there is data in 2nd child .... it happens also if i switch 2nd child as first one , and alse 1st child as a 2nd one... here is the code ...


Public Sub Select_RFQ()
Dim DA_Request As New clsDataAccess
Dim DA_Request_History As New clsDataAccess
Dim DA_Request_Attachment As New clsDataAccess
Dim ds As New DataSet()
Try
'.......................................
With DA_Request
.SQL = "usp_Request_S_RFQ"
.InitializeCommand()
.AddParameter("@Company", SqlDbType.NVarChar, LookUpEdit_Company.Text)
.FillDataSet(ds, "Request")
End With


With DA_Request_History
.SQL = "usp_Request_S_RFQ_History"
.InitializeCommand()
.AddParameter("@Company", SqlDbType.NVarChar, LookUpEdit_Company.Text)
.FillDataSet(ds, "History")
End With
End If
Next


With DA_Request_Attachment
.SQL = "usp_Attachment_S_Request"
.InitializeCommand()
.AddParameter("@Company", SqlDbType.NVarChar, LookUpEdit_Company.Text)
.FillDataSet(ds, "Attachment")
End With
Call CreateRelation(ds)
Me.GridControl1.DataSource = ds.Tables("Request")
Me.GridControl1.ForceInitialize()
Me.GridControl1.LevelTree.Nodes.Add("History", Me.GridView2)
Me.GridControl1.LevelTree.Nodes.Add("Attachment", Me.GridView3)
Catch ExceptionErr As Exception
MessageBox.Show(ExceptionErr.Message)
End Try
DA_Request.Dispose()
DA_Request_History.Dispose()
ds.Dispose()
ds.Dispose()

End Sub

Private Sub CreateRelation(ByRef ds As DataSet)

Dim re1 As DataRelation
re1 = New DataRelation("History",
ds.Tables("Request").Columns("ReqID"),
ds.Tables("History").Columns("ReqID"))

ds.Relations.Add(re1)

Dim re2 As DataRelation
re2 = New DataRelation("Attachment",
ds.Tables("Request").Columns("ReqID"),
ds.Tables("Attachment").Columns("ForeignKey"))
ds.Relations.Add(re2)

End Sub