واضح آرشیو وب فارسی:سایت ریسک: t=8996">مرتب كردن اطلاعات مانند Order By در متغير ها Barbababak 23 فروردين 1383, 23:58توي ASP.Net چند تا متغير دارم كه همه آرايه اند هر كدوم با انديس مساوي، به هم مربوطند (درست مثل ركوردهاي يك Table) براي مثال اسم متغير ها آاينها هستند: ID , Name, Telephone, Address, ... حالا مي خوام اينارو بر حسب IDشون مرتب كنم (دقيقا مثل كاري كه Order By انجام ميده) چطوري؟!!!!! يادآوري كنم كه اطلاعات درون متغيرها وجود دارند نه در Table و ذخيره اون توي Table هيچ نفعي نداره. متشكرم. omidak 24 فروردين 1383, 00:15سلام: ببين يه كلك توپ بزن خيال خودتو راحت كن :lol: : يك DataTable بساز. تمام بعد Column هایه مورد نظر رو بهش اظافه کن. همه داده ها رو توش اضافه کن به DefaultView برو بعد اون تو Sort رو که String هست برابر با ID قرار بده :wink: Barbababak 24 فروردين 1383, 21:13براي اين كار Table تو حافظه ساخته مي شه يا رو ديسك؟ خيلي مهمه كه رو ديسك نباشه چون در غير اين صورت هارد سرور به زودي مي سوزه! omidak 24 فروردين 1383, 23:36سلام نه ديگه شما يك DataTable رو باید Dim کنید در آخر سر هم که این Table جایی Save نمیشه. مثل این میمونه که بگید یک داده ای رو که String هست رو Hard ذخیره میشه یا .... 8O :wink: Barbababak 27 فروردين 1383, 00:02مي توني يه مثال ساده با دو تا فيلد و دو تا ركورد و يه دستور سلكت بزني؟ ممنون مي شم. omidak 27 فروردين 1383, 00:24سلام: بله حتماً :wink: Dim DT As New DataTable Dim DR As DataRow DT.Columns.Add("Name", Type.GetType("System.String")) DT.Columns.Add("UserName", Type.GetType("System.String")) Do While ---- DR = DT.NewRow() DR.BeginEdit() DR.Item("Name") = "---" DR.Item("UserName") = "---" DR.EndEdit() DT.Rows.Add(DR) Loop DT.DefaultView.Sort = "Name" For i = 0 To DT.DefaultView.Count - 1 Response.Write(DT.DefaultView(i).Item("Name")) Response.Write(DT.DefaultView(i).Item("UserName")) Next داخل اون DoWhile تمام Recordeها یه خودتون رو ذخیره کنید و در For i هم نمایش بدید :wink: Barbababak 27 فروردين 1383, 01:25قربون دستت خيلي لطف كردي اميد جان دستت درد نكنه Barbababak 27 فروردين 1383, 01:49راستي اگر بخوام در صورتي كه توي ركورد جديد مقدار فيلد Name تكراري بود مقدار فيلد Count يكي بيشتر بشه چه كار بايد بكنم؟ مرسي omidak 27 فروردين 1383, 14:55سلام: برايه اين كار بايد از يه چيزي شبيه به Group By ای که در Database هست استفاده کنی. اما تویه DataTable همچین چیزی نیست. راستی این کار رو برایه چی داری انجام میدی؟ این کار خیلی غیر عادیه. :roll: اطلاعات رو از کجا میگیری؟ :roll: :wink: Barbababak 28 فروردين 1383, 11:15براي يك متا سرچ انجين مي خوام اطلاعات رو از موتور هاي جستجو گرفتم حالا مونده مرتب كردنشون! نمونه ناقصشو مي توني اينجا ببيني omidak 28 فروردين 1383, 16:17سلام: ايول. اما ببين نميخواد اينها رو مرطب كني چون اينها بر حسب امتيازاشون مرطب ميشن. :wink: Barbababak 28 فروردين 1383, 16:53نمي خوام سر خود اين كارو انجام بدم مي خوام نتيجه هايي رو كه از گوگل و ياهو و ... گرفتم ميانگين رتبه بگيرم براي هر نتيجه يعني اگر موتورهاي جستجو فقط دو تا بودن و يك نتيجه تو ياهو اول بود و تو گوگل سومُ توي سايت نتيجه رو جاي رتبه دوم نشون بده مشكل من اينه كه بجاي اينكه از C# و VB.Net و SQL به سمت ASP.Net بيام دارم راه رو برعكس طي مي كنم و هر چند وقت حسابي تو گل گير مي كنم! omidak 28 فروردين 1383, 17:01سلام: خوب پس همه اش رو رفتي بجز Group by حالا برایه چی میخوایی Groupby بکنی؟ :roll: و تکراری نداشته باشی؟ :roll: Barbababak 28 فروردين 1383, 19:14منظورت از Group By همون Order By هست ديگه؟ خيلي ساده براي اينكه موتور جستجو نبايد نتيجه هاي تكراري نشون بده اميدي هست يا بايد كل Namespace هاي .Net رو زير و رو كنم؟! راستي يك آدرس مي توني بدي كه ليست Object هاي .Net رو نشون بده و دربارشون توضيح بده؟ omidak 28 فروردين 1383, 20:51سلام: نه همون Group By که در موردش تویه اون تاپیک Database توضیح میدم :wink: البته فکر نکنم چیزی پیدا کنی باید یه چیزی بسازی. :roll: :wink: حالا اگر چیزی پیدا نکردی. بگو یه طرحی بزنیم :wink: Barbababak 28 فروردين 1383, 21:32ديگه دارم سي شارپ كار مي كنم بلكه يه خورده سوادم بالا بره! اينطوري نمي شه SQL Server رو هم كه هر كاري كردم نتونستم نصب كنم نه تو كامپيوتر خودم نه برادرم نمي دونم مشكلم كجاست يكي نيست به من بگه با اين بي سوادي تو ديتابيس پروژه متا سرچ انجين چرا انجام ميدم!!! تو اين چند روز مي گردم دنبال جوابش تو هم اگر چيزي جلوي راهت سبز شد ما رو هم خبر كن omidak 28 فروردين 1383, 22:01سلام: C# و VB.Net یکیه :wink: تو هنوز نتونستی نصب کنی SQL رو؟ 8O Barbababak 28 فروردين 1383, 22:53نه اون فايل رو كه گفتي (sql2kdesksp3.exe) رو داونلود كردم با همون روش كه گفتي (يا حتي بدون آرگمان خط فرمان) اجرا كردم اما اين پنجره رو نشون ميده مي دوني مشكل از كجاست؟ omidak 28 فروردين 1383, 23:28سلام: نه اول اينو به صورت عادي اجرا كن. چون اين يك Exe ای هست که فشرده شده. و با Setup اش اون فایل فشرده باز میشه و تازه اون آدرس مشابه ای که دادم رو اجرا کن :wink: Barbababak 29 فروردين 1383, 00:22اميد خان، ديگه داري خيلي دست كم مي گيري ها! يه كلاس داس مقدماتي كه رفتيم قبلا همين كار ها رو انجام دادم omidak 29 فروردين 1383, 01:40سلام: ببین منظور ام رو نفهمیدی :lol: اول این فایل رو به صورت عادی اجرا کن بعد از نصب یه آدرسی شبی به اون چیزی که بهت دادم برات میسازه بعد دیگه کاریی که گفتم :wink: bahman62 29 فروردين 1383, 10:03سلام اقا حالا من يه همچين چيزي ميخوام ولي با php كه توي سايتمو باهاش كاملا بتونم جستجو كنم Barbababak 29 فروردين 1383, 10:57همين كارو كردم به خدا!! فايل داونلود شده رو اجرا كردم يه جا فايل ها رو ريخت اونجا به اون روش اجرا كردم اون پنجره اومد معمولي هم اجرا كردم باز همون پنجره قشنگه اومد! بايد بگم كه از قبل SQL Server Enterprice روش نصب بود ... Barbababak 29 فروردين 1383, 12:24توي استفاده از DataTable جايي هست كه بشه از دستوراي SQL براي SELECT استفاده كرد؟ اگر اينطور باشه مشكل حله omidak 29 فروردين 1383, 14:14سلام: والا نميدونم چي كار ميكني :roll: من فقط ميدونم كه Where داره با Order By :wink: Order BY رو بلدی اون یکی هم FilterRow هست :wink: Barbababak 29 فروردين 1383, 15:13SQL شو نسبتا بلدم اما نميدونم تو ASP.Net بايد كجا وارد كنم تو استفاده از DataTable اينجوري بنويسم؟! dt.SQL("Select...") injoori پراپرتي يا فانكشنش كدومه؟! omidak 29 فروردين 1383, 16:46سلام: نداره :roll: فقط Where و OrderBy :roll: Barbababak 29 فروردين 1383, 18:24WHERE و ORDER BY اش چه طوري هست؟ 1 مثال مي زني؟ (به خدا مي رم دات نت ياد بگيرم از اين بيسوادي در بيام!!) من يه همچين چيزي هم پيدا كردم كه روش كار مي كنم! dt.DataSet.Tables.Item(i).Rows.Item(i).BeginEdit() -1 كه يكي از فيردهاي هر ركورد رو (امتياز و رتبه هر URL) تغيير بدم omidak 29 فروردين 1383, 22:07سلام: اين كدي كه دادي يه خورده دور شمسي قمري زدي: :lol: dt.Item(i).Rows.Item(i).BeginEdit() -1 و کارش اینه که اجازه Edit کردن رو به Item شما میده :wink: در مورد OrderBy که مثال زدیم همون DefaultValue.Sort برایه Where هم FilterRow که در همون DefaultValue هست :wink:
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 768]