صفحه 2 از 5 اولاول 1234 ... آخرآخر
نمایش نتایج 41 تا 80 از 184

نام تاپیک: سوال و جواب های ساخت پروژه ثبت سفارشات

  1. #41
    کاربر دائمی آواتار uniqueboy_ara
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    تهران
    پست
    420

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    2010 هستش ولی سرویس پک یک نیست
    حق با شماست، وقتی سیو رو میزنم بعضی وقتا یه ارروری میده! پس این اررور به خاطر همین مسئله پیش میاد؟! مرسی از توضیحاتتون

  2. #42
    کاربر دائمی آواتار electro_esma
    تاریخ عضویت
    شهریور 1390
    محل زندگی
    تهران
    پست
    236

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    با تشکر از استاد ( به حق استاد)

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

  3. #43
    کاربر دائمی آواتار haniyehghassami
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    شیراز
    سن
    37
    پست
    138

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    سلام
    بچه ها اماده باشین واسه قسمت دوم
    اگه فیلم اموزشی را دیده باشین پس تا حالا حتما چیزایی از entity یاد گرفتین
    پس یک نمونه بسازین و اماده بشین واسه فاز دوم
    تا فردا جزئیات فاز دوم اماده میشه
    مرحله بعدی باید حتما از entity استفاده کنین.پس از الان سرچ کنین تا بهترین پروژه را درست کنین(شاید توی پروژه اصلی کد شما قرار بگیره)
    از امشب مرحله 2 شروع شده

  4. #44
    کاربر دائمی آواتار haniyehghassami
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    شیراز
    سن
    37
    پست
    138

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نکات مهم مرحله 1 پروژه :
    __________________________________________________ ____________
    1 - نوع داده ای Uniqueidentifier بود که فکر کنم کسانی بودن که مثل من باهاش اشنا نبودن:
    نوع داده ای 16 بیتی هست که بصورت باینری ذخیره میشه با نام globally unique identifiers (GUIDs) که یک عدد دودویی منحصر به فرد هست و هیچ کامپوتر دیگری در جهان وجود ندارد که یک GUID مشترک با کامپوتر دیگر را تولید کند. استفاده ی اصلی از GUID برای تولید یک شناسه ی منحصر به فرد در یک سیستم شبکه بزرگ که شامل چندین سایت است ,کاربرد دارد.
    یک مقدار GUID برای ستون uniqueidentifier است که معمولا توسط یکی از روش های زیر به دست می اید :
    * In a Transact-SQL statement, batch, or script by calling the NEWID function.
    *در کد برنامه با فراخوانی تابع API ویا متدی که GUIDمی گرداند
    این متغیر به 2 فرمت زیر به وجود می اید :
    1 - رشته ای حاوی کاراکتر و عدد:Character string format: '6F9619FF-8B86-D011-B42D-00C04FC964FF'
    2 - فرمت دودویی : 0xff19966f868b11d0b42d00c04fc964ff
    همان طور که در فیلم دیدین مفدارRowGuidرا برابرYes زذیم تا مقدار پیش فرض برای Default value or binding بشه NewGuid() تا هربار یک مقدار منحصربفرد در دنیا در فیلد جدول شما بیا
    (منبع این مطلب)
    .

  5. #45
    کاربر دائمی آواتار haniyehghassami
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    شیراز
    سن
    37
    پست
    138

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نکته 2 - چرا stored generate patern را identity گذاشتیم؟ چون ایدی ما بصورت اتوماتیک generate میشه و چون میخواهیم بفهمیم اون ایدی از سمت دیتابیس چی بوده پس این مقدار رو توی حالت مدل که توی ویژال استدیو هستش را identity میزاریم و توی فایل xml هم تغییرش میدیم

    نکته 3 - alt + shft + f10 که برای ساختن یک متد بود : یعنی مثلا اگه میخواهین یک متد بسازین فقط اسمش با ارگومنت هاش را بنویسید و این دکمه ها را بزنین تا اتوماتیک دکمه ساخته بشه

  6. #46
    مدیر بخش آواتار mmd2009
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    پست
    2,393

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نقل قول نوشته شده توسط haniyehghassami مشاهده تاپیک
    نکته 3 - alt + shft + f10 که برای ساختن یک متد بود : یعنی مثلا اگه میخواهین یک متد بسازین فقط اسمش با ارگومنت هاش را بنویسید و این دکمه ها را بزنین تا اتوماتیک دکمه ساخته بشه
    خیلی از کدهارو ما اصولا نمی نویسم snip رو برای همین گذاشتن که وقتمون رو هدر ندیم برای نوشتن کدهای نظیر for یا foreach یا if یا .....

    کسی که به خود اطمینان دارد به تعریف دیگران احتیاج ندارد. «گوستاو لوبون»


  7. #47

  8. #48
    VIP آواتار gwbasic
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    قسمت دوم ویدیو مربوط به ساخت فرم Customer در تاپیک اصلی قرار داده شد لطقا به تاپیک اصلی که در پست اول اشاره شده مراجعه کنید.

    این پست حذف خواهد شد

  9. #49
    کاربر دائمی آواتار haniyehghassami
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    شیراز
    سن
    37
    پست
    138

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نقل قول نوشته شده توسط gwbasic مشاهده تاپیک
    قسمت دوم ویدیو مربوط به ساخت فرم Customer در تاپیک اصلی قرار داده شد لطقا به تاپیک اصلی که در پست اول اشاره شده مراجعه کنید.

    این پست حذف خواهد شد
    سلام؟؟؟؟؟؟؟؟؟؟؟؟!!!!!!!!!!!!!!!!!! !!!!!!!!!!11
    کدوم پست قرار هست حدف بشه؟؟؟؟؟

  10. #50
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نقل قول نوشته شده توسط haniyehghassami مشاهده تاپیک
    نکته 2 - چرا stored generate patern را identity گذاشتیم؟ چون ایدی ما بصورت اتوماتیک generate میشه و چون میخواهیم بفهمیم اون ایدی از سمت دیتابیس چی بوده پس این مقدار رو توی حالت مدل که توی ویژال استدیو هستش را identity میزاریم و توی فایل xml هم تغییرش میدیم

    نکته 3 - alt + shft + f10 که برای ساختن یک متد بود : یعنی مثلا اگه میخواهین یک متد بسازین فقط اسمش با ارگومنت هاش را بنویسید و این دکمه ها را بزنین تا اتوماتیک دکمه ساخته بشه
    من هر چی این دکمه ها را میزنم الت شیفت اف 10 هیچ متدی ظاهر نمیشه؟؟

  11. #51
    مدیر بخش آواتار mmd2009
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    پست
    2,393

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نقل قول نوشته شده توسط haniyehghassami مشاهده تاپیک
    سلام؟؟؟؟؟؟؟؟؟؟؟؟!!!!!!!!!!!!!!!!!! !!!!!!!!!!11
    کدوم پست قرار هست حدف بشه؟؟؟؟؟
    منظورشون همون پست بود دیگه. یعنی همون 51 .

    اگر قرار باشه اینجارو پاک بکنن میگن تاپیک رو پاک میکنن.

    موفق باشید

    کسی که به خود اطمینان دارد به تعریف دیگران احتیاج ندارد. «گوستاو لوبون»


  12. #52
    کاربر دائمی آواتار haniyehghassami
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    شیراز
    سن
    37
    پست
    138

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نقل قول نوشته شده توسط noroozifar مشاهده تاپیک
    من هر چی این دکمه ها را میزنم الت شیفت اف 10 هیچ متدی ظاهر نمیشه؟؟
    یعنی اینکه اول اسم متدی که میخواهی تعریف کنی را بنویس

    بعدش براش پرانتز بزار و اگه متدت ارگومان ورودی داره براش توی پرانتز اونارو بنویس

    بعدش سمی کولن بزن

    چون تابعت تعریف نشده هستش زیر یه خط قرمز میکشه خود VS که بهت بگه این متد در کدت موجود نیست حالا 3 راه برای درست کردن متدت هست

    1 - نوع( ش ز ) اینکه با ماوس روش وایسی تا مستطیل ابی کوچولو بیاد زیر اون خط قرمزه بعد با ماوس برو روش یه مربع باز میشه روش کلیک کن و اولین خطش رو بزن مثل زیر :

    Untitled.png
    2- راهی که باید اون کلیدها رو از صفحه کلید بزنی
    alt + shft + f10 که برای ساختن یک متد بود
    3- متد را دستی بساز
    آخرین ویرایش به وسیله haniyehghassami : جمعه 04 آذر 1390 در 17:28 عصر

  13. #53
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    یک مقدار هم در مورد کانکشن استرینگ توضیح بدید اینکه من همیشه فایل را در پوشه bin\Debug پروژه میگذاشتم و کانکشن استریگ را می نوشتم حالا تو این روش فکر کنم راحتر میشه با موضوع کانکشن استرینگ کنار امد .... در مورد این موضوع توضیح بدهید کانکش استرینگ به چه صورت در این روش پیاده سازی کنیم که هنگام ایجاد فایل setup با مشکل بر نخوریم ؟؟ مراحل کار را لطفا ....

    با تشکر از همه

  14. #54
    کاربر دائمی آواتار shahrzad87
    تاریخ عضویت
    مهر 1388
    محل زندگی
    شیراز
    پست
    259

    Smile نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    سلام
    الان چند روز می شه که آقای gwbasic قسمت دوم پروژه رو تعریف کردن اما کسی کد ننوشته، این بار هم من شروع می کنم و اولین پروژه رو می گذارم که این تایپیک و آموزش ادامه پیدا کنه.
    مطمئنا کامل کامل و خالی از اشکال نیست... راستش من مدتی هست که خودم درگیر یه پروژه هستم و نتونستم برای این پروژه خیلی وقت بگذارم، فقط سعی کردم حداقل ها رو داشته باشه.
    خوشحال می شم که شما دوستان ایرادهای کارم رو بگین و کاملترش کنین

    این هم اسکریپت دیتابیس :

    USE [storeDB]
    GO
    /****** Object: Table [dbo].[Product] Script Date: 11/28/2011 22:34:22 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE TABLE [dbo].[Product](
    [Id] [uniqueidentifier] ROWGUIDCOL NOT NULL,
    [Name] [nvarchar](50) NULL,
    [Price] [int] NULL,
    CONSTRAINT [PK_Product] PRIMARY KEY CLUSTERED
    (
    [Id] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    /****** Object: Table [dbo].[Customer] Script Date: 11/28/2011 22:34:22 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE TABLE [dbo].[Customer](
    [Id] [uniqueidentifier] ROWGUIDCOL NOT NULL,
    [Name] [nvarchar](50) NULL,
    [Family] [nvarchar](50) NULL,
    CONSTRAINT [PK_Customer] PRIMARY KEY CLUSTERED
    (
    [Id] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    /****** Object: Default [DF_Product_Id] Script Date: 11/28/2011 22:34:22 ******/
    ALTER TABLE [dbo].[Product] ADD CONSTRAINT [DF_Product_Id] DEFAULT (newid()) FOR [Id]
    GO
    /****** Object: Default [DF_Customer_Id] Script Date: 11/28/2011 22:34:22 ******/
    ALTER TABLE [dbo].[Customer] ADD CONSTRAINT [DF_Customer_Id] DEFAULT (newid()) FOR [Id]
    GO
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله shahrzad87 : چهارشنبه 09 آذر 1390 در 23:51 عصر

  15. #55
    کاربر دائمی آواتار haniyehghassami
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    شیراز
    سن
    37
    پست
    138

    Wink نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    سلام

    یه چیز باحال :
    عیب های این برنامه را هر کی تونست پیدا کنه جایزه داره :
    فایل های ضمیمه فایل های ضمیمه

  16. #56
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    منهم مشکل دارم نمیدونم چرا اینجوری میشه بصورت فیلم گذاشتم یکبار خوبه مشکلی ایجاد نمیشه یعنی اطلاعات نمیپره یکبار هم که اجرا میکنی میبینی خالیه بانک ؟؟
    این خود برنامه :
    http://s2.picofile.com/file/7198115371/Store1.rar.html
    اینم فیلم :

    http://s1.picofile.com/file/71981523...itled.swf.html
    بخشید اگر یک مقدار لهجه داره داخل فیلم :
    آخرین ویرایش به وسیله noroozifar : سه شنبه 08 آذر 1390 در 19:00 عصر

  17. #57
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    ما هر چی اینجا منتظر شدیم تا آموزش جدید بیاد کسی نیامد و جواب سئوالات ما را هم ندادند به خاطر همین اینبار با عکس میگذارم تا ببینم کسی جواب میده یا نه ؟؟؟

    بیین این نمای اول solutoin explorer

    بقیه عکس ها را برای اینکه حجم تاپیک بالا نره فقط لینک میگذارم
    من می خواهم حالتی را ایجاد کنم که دیتا بیس به بانک attach بشه امدم در فولدر data ازadd>new>existing item فایل storedb.mdf را اضافه کردم بعد امدم از قسمت models یک مدل جدید ایجاد کردم و باتوجه به دیتابیس کانکش و جدولها را انتخاب کردم برنامه اجرا میشه داده ها اضافه می شوند به جدول اما نمیدونم به محض اینکه من در کد برنامه تغییری را ایجاد کردم و برنامه را اجرا کردم مقادیر قبلی یعنی رکورد های قبلی که به بانک اضافه کردم نیستند از بین میرند

    الان چند شبه دارم پیگیری میکنم هر جا سر میزنم تا مشکل را حل کنم نمیشه علت اینکار هم به این دلیله اگر پروژه را برروی سیستم دیگری انتقال دادم یا یک پروژه نصب ایجاد کردم دیگه مشکل اینکه اول برم بانک را به اس کیو ال attach کنم نداشته باشم خودش اینکارو انجام بده
    این مرحله اخر بعد از اینکه بانک و مدل را به پروژه اضافه کردم :

    این هم محتویات داخل app
    <add name="StoreDBEntities" connectionString="metadata=res://*/Models.StoreModel.csdl|res://*/Models.StoreModel.ssdl|res://*/Models.StoreModel.msl;provider=System.Data.SqlClie  nt;provider connection string=&quot;Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector  y|\Data\StoreDB.mdf;Integrated Security=True;User Instance=True;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />


    اینم لینک سایر عکسها از مراحل کار :
    http://s2.picofile.com/file/71994853..._01_021852.png
    http://s1.picofile.com/file/71994855..._01_021929.png
    http://s1.picofile.com/file/71994856..._01_022011.png
    http://s2.picofile.com/file/71994858..._01_022054.png
    http://s1.picofile.com/file/71994861..._01_022835.png

    لااقل جواب مشکلات مردمو بدید اقا چرا مردم را اذیت میکنید یا تاپیک نزنید اینهم اموزشی یا اگر میزنید ادامه بدید کلاس دیگه نگذارید (اینهم یک نمونه اعصبانیت و اعتراض )

  18. #58
    VIP آواتار gwbasic
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    جناب noroozifar منو ببخشید که دیر جواب می دم چون می خواستم کدتون رو نگاه کنم و نکاتی رو در مورد کدتون بگم ولی فرصت نکردم
    اما نکته ای که شما مشکل دارید اگه پست های منو حداقل (نه تو این تاپیک) دنبال کرده بودین جواب این سوالو دارم!!!
    مشکلی که شما مطرح کردین مشکل نیست یه رفتار طبیعی هست که از Visual studio سر می زنه. هنگامی که شما تغییری توی کد ایجاد می کنید برنامه هنگام اجرا ابتدا Build میشه و فایلهای جدید توی فولدر Bin ریخته می شه بنابراین فایل StoreDB شما هم که در فولدر DataAccess برنامتون قرار داره دوباره توی Bin ریخته می شه و شما موقع اجرا می بینید که اطلاعات ازبین رفته چون شما داده هاتون رو از StoreDB که توی Bin هست می خونید (در اصل فایلی که در کنار Exe قرار می گیره) جای نگرنی هم نیست چون این مسئله هنگام Develop پیش می یاد. و جای دیگه چون شما فقط یک فایل StoreDBکنار exe دارین این اتفاق نمی افته. امیدوارم متوجه شده باشین

    در مورد کدتون هم بعدا توضیح می دم
    آخرین ویرایش به وسیله gwbasic : پنج شنبه 10 آذر 1390 در 12:27 عصر

  19. #59
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    با تشکر از شما
    بله من به این موضوع امروز قبل از پاسخ شما پی بردم چه اتفاقی رخ میدهد و برای اینکه این مشکل را در محیط برنامه نویسی حل کنم به قسمت app.config رفتم و آدرس attach را از AttachDbFilename=|DataDirectory|\Data\StoreDB.mdf به آدرس اجرای برنامه تغییر دادم AttachDbFilename=D:\TAMRINAT C#‎\TestEF2\TestEF2\Data\StoreDB.mdf و مشکل بر طرف شده و نکته اینجاست که من باید بعد از اجرا کامل پروژه دوباره آدرس attach کردن بانک را به حالت اول بر گردانم ..

    از شما متشکرم خواهشا آموزش های جدید را بگذارید یک پروژه بزرگ دارم و می خواهم از معماری EF استفاده کنم و وقت کافی متاسفانه ندارم داخل کدهایم خواستم از storeprocdure استفاده کنم ....... که هنوز موفق نشدم منتظریم اقای مدیر

  20. #60
    VIP آواتار gwbasic
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    و اما کد جناب Noroozifar
    چند مورد رو اشاره مي کنم در ادامه سعي کنيد رعايت کنيد:
    1- از متد Fill‌ براي پر کردن گريد استفاده شده ولي چرا از امکانات EntityFramework‌براي حفظ و نگهداري و تغيير داده هايي که گرفته شده استفاده نکرديد.
    2- براي پر کردن TextBox ها از Binding بايد استفاده ميشد BindingSource اين کارو براي شما ساده مي کنه که اصلا استفاده نکرديد.
    3- براي اينکه مشخص کنيد فرم در حالت ويرايش هست از Tag مربوط به btnSave استفاده کردين که البته راه اشتباهي نيست ولي بهتره هيچ وقت از منطقتون رو توي UI قرار ندين و از اونجا بگيرين!!!
    بهتره مثل IsDirty که توي ويديو بکار بردم شما هم فيلدي براي اين کار تعريف کنيد و هرجا لازم داشتيد از اون فيلد استفاده کنيد به کد زير توجه کيند:
    براي حالت هاي مختلف فرم (اضافه يا ويرايش) اول يک enum تعريف مي کنم


    public enum FormMode
    {
    Add,
    Edit
    }

    سپس يک فيلد در سطح فرم تعريف ميکنم



    private FormMode formMode;


    حالا هرجا خواستم حالت فرم رو در اين فيلد ذخيره مي کنم مثلا توي متد Edit بجاي ست کردن btnSave.Tag‌ مي نويسيم




    formMode = FormMode.Edit;



    و در نهايت هنگام ذخيره ( متد Ok !؟!؟!؟؟)


    switch (formMode)
    {
    case FormMode.Add:
    Insert();
    break;
    case FormMode.Edit:
    UpTodate();
    break;
    default:
    break;
    }



    4- براي توليد Id جديد يه کد غيره بهينه نوشتيد. چرا؟ ترجيح مي دم فقط کدتون رو بذارم بقيه دوستان توضيح بدن


    private Int64 Next()
    {
    Int64 valu = 0;
    try
    {
    using (StoreDBEntities Context = new StoreDBEntities())
    {
    // string Querystring = "Select VALUE c From Context.tblCustomers AS c";
    var objQuery = Context.tblCustomers;
    foreach (var item in objQuery)
    {
    if (item.Id > valu)
    valu = item.Id;
    }
    }
    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    }
    return (valu + 1);
    }


    5- در متد delete شما از EntityCommand‌ استفاده کردين ديگه نيازي به new کردن Context نيست
    6- با اين روش پياده سازي که شما انجام دادين چرا توي Cancel متد Fill‌رو صدا زدين نيازي نيست

  21. #61
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    - از متد Fill‌ براي پر کردن گريد استفاده شده ولي چرا از امکانات EntityFramework‌براي حفظ و نگهداري و تغيير داده هايي که گرفته شده استفاده نکرديد.
    2- براي پر کردن TextBox ها از Binding بايد استفاده ميشد BindingSource اين کارو براي شما ساده مي کنه که اصلا استفاده نکرديد.
    چون از BindingSource استفاده نکردم می بایست به یک طریق اطلاعات داخل دیتا گرید را refresh کنم به خاطر همین متد Fill را نوشتم و بعد من دارم هنوز امکانات مختلف entity framework را یاد میگیرم هنوز به طور کامل حفظ و نگهداری و تغییر داده ها را بلد نیستم با این روش

    اما برای پر کردن TextBox ها یک زمان میرسه که نیازی ندارم به محض انتخاب یک رکورد از دیتا گرید حالا به هر صورت دیگه اطلاعات همان زمان در TextBox ها نمایش داده بشه به خاطر همین دستی سعی کردم انها را پر کنم اما در کل منتطقی به نظر نمیاد و به ندرت این اتفاق رخ میدهد و بهتر و ساده تر همان استفاده از bindingsource بود
    3- براي اينکه مشخص کنيد فرم در حالت ويرايش هست از Tag مربوط به btnSave استفاده کردين که البته راه اشتباهي نيست ولي بهتره هيچ وقت از منطقتون رو توي UI قرار ندين و از اونجا بگيرين!!!
    این روشی که شما توضیح دادید خیلی خوبه از این به بعد از این روش استفاده میکنم تا کدها ساختار و خوانایی بهتریی پیدا کنند

    4- براي توليد Id جديد يه کد غيره بهينه نوشتيد. چرا؟ ترجيح مي دم فقط کدتون رو بذارم بقيه دوستان توضيح بدن
    ببینید من می خواستم با این روش در اصل ردیف را ایجاد کنم که رکوردها را شمارش کنه شما درست میگید منتطقی نیست و مشکلی که پیش میاد زمان حذف یک رکورد مثلا اگر من 4 رکورد داشته باشم شمارش id که به عنوان شماره ردیف استفاده کرده ام به صورت 1و2و3و4 می شود حالا در نظر بگیرید من رکورد 2 را حذف کنم شماره ردیف ها یا همان id ها به صورت 1و3و4 می شود میبیند شماره ردیف ها بهم خورده ولی به طور کلی همیشه ای دی که ایجاد میشه منحصر به فرد هستش ....
    خوب حالا می خواستم بدونم برای اینکه شماره ردیف ها در یک دیتا گرید به درستی نمایش داده بشه بهتره چه کنم ؟؟؟
    - در متد delete شما از EntityCommand‌ استفاده کردين ديگه نيازي به new کردن Context نيست
    من خواستم فقط بدونم به چه طریق میشه از EntityCommand‌ و پروسیجرهای نوشته شده در خود دیتابیس استفاده کنم ولی موفق نشدم و با Error مواجه شدم و میبیند کدهای قسمت حذف رکورد ناقصه منتظرم تا این مورد را آموزش بدهید
    - با اين روش پياده سازي که شما انجام دادين چرا توي Cancel متد Fill‌رو صدا زدين نيازي نيست
    اگر نگاه کنید متد Cancel در انتهای عمل insertو Edit صدا شده و بهمین دلیل fill را داخل Cancel قرار دادم می توانستم قرار ندهم و بعد از متد cancel متد fill را صدا بزنم کلا برای اینکه یک refresh کامل صورت بگیرد بعد از اینکه کاربر لغو عملیات را زد اینکار را انجام دادم

    در نهایت واقعا از شما ممنونم کدهای من را با کمال دقت بررسی کردید و اشتباهات من را بهم گفتید ... من منتظر آموزشهای جدید شما هستم .... امیدوارم شما و کل کاربران این سایت همیشه موفق باشند

  22. #62
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    سلام
    فکر کنم تو این تاپیک فقط من پست میدم
    همینجور که آقای مدیر گفتند خواستم از BindingSourc استفاده کنم بنابر این یک bindingsource ایجاد کردم و دیتاگرید و تکست باکس ها ربهش وصل کردم اما با این تفاوت که از bindingnavigator نمی خواهم استفاده کنم بنابر این در رویداد new این کدها را نوشتم :
    private void New()
    {
    try
    {
    grpGrid.Enabled = false;
    grpValues.Enabled = true;

    bsCustomer.AddNew();
    btnSave.Tag = "btnNew";
    btnEdit.Enabled = false;
    btnNew.Enabled = true;
    btnDelete.Enabled = false;
    btnSave.Enabled = true;


    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    }
    }

    و در رویداد save هم این را نوشتم :
            private void Insert()
    {
    try
    {
    bsCustomer.EndEdit();
    Context.SaveChanges();
    MessageBox.Show("ذخیره شد");
    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    }
    }


    اما کار نکرد و رکوردهای خالی یا غیر منطقی وارد میکنه البته توجه کنید که من کد ID را خودم ایجاد میکنم ؟
    اینهم کدها : اگر امکان داره مشکلم را بر طرف کنید :
    http://s2.picofile.com/file/7200708709/Store1.rar.html

  23. #63
    کاربر دائمی آواتار linux
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    پست
    2,313

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نقل قول نوشته شده توسط haniyehghassami مشاهده تاپیک
    سلام

    یه چیز باحال :
    عیب های این برنامه را هر کی تونست پیدا کنه جایزه داره :
    اگر قرار باشد که پروژه حرفه باشد خوب همش عیب بود من حسنی ندیدم.

  24. #64
    VIP آواتار gwbasic
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    پاسخ پست 63 Noroozifar

    نمی دونم چرا از BindingNavigator استفاده نمی کنی ولی بهر حال مورد خوبی مطرح شد.
    همونطور که خودت توی کد نوشتی برای ایجاد یک customerجدید از متد AddNew‌مربوط به BindingSource استفاده کردی که کاملا درسته و Customer جدید به درستی ایجاد شده اما مشکل شما اینه که می خوای خودت Id جدید رو مقدار دهی کنی!
    برای این کار وقتی شی جدید به BindingSource اضافه می شه رویداد AddingNew اتفاق می افته شما می تونی از این رویداد به شکل زیر برای مقدار دهی Id استفاده کنی

    private void bsCustomer_AddingNew(object sender, AddingNewEventArgs e)
    {
    tblCustomer newCustomer= new tblCustomer();
    newCustomer.Id = Next();
    e.NewObject = newCustomer;
    }


  25. #65
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

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

  26. #66
    VIP آواتار gwbasic
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    BindingNavigator امکان هر جور تغییر در ظاهر رو داره. شما هر تغییری که بخوای می تونی روی اون انجام بدی. اون Toolstrip ای که خود BindingNavigator روی فرم قرار می ده رو شما می تونی کلا پاک کنی و کنترل های مورد نظر خودت رو بندازی مثلا می تونی همه اون Button هایی که توی پروژت گذاشتی رو به BindingNavigator بدی و بذاری کارای تکراری مثل اضافه و ... رو BindingNavigator خودش انجام بده.
    اگه به نکته ای اشاره می کنم فقط منظورم اینه که راهی باز بشه برای بررسی جدید برای شما یکم به نکته ای که اشاره می کنم دقت کنید. حالا این نکته می تونی یکم وقت گیر باشه مثل BindingNavigator که کامل به چندو چون کار آشنا بشی و یا می تونه خیلی ساده بشه مثل موارد 4 یا 6 که در پست های قبلی گذاشتم. دقت کن که من جواب نمی خوام بلکه می خوام بیشتر بررسی کنی و خودت نتیجه رو همینجا بگی (چون من جواب رو می دونم)

  27. #67
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    من باید تمامی موارد EF را یاد بگیرم اضافه .. حذف ... جستجو(پیشرفته) ... ویرایش .... استفاده از پرسیجرهای نوشته شده در اس کیو ال ... در نهایت پروژه ای که دارم باید در معماری 3 لایه پیاده سازیش کنم ... و همیشه کدهایم را دستی می نوشتم و حالا می خواهم از شیوه های جدیدتر و با کد نویسی بهینه تر و خیلی موارد دیگر... من هر روز 3 الی 4 بار به این تاپیک سر میزنم تا از شما اساتید بیشتر یاد بگیرم و منتظر آموزشها، نکات کلیدی و غیره هستم ... هر مورد را چندین بار با اینکه وقتم محدوده بررسی میکنم تا اینکه همه چیز کامل دستم بیاد
    بر روی BindingNavigator هم کار میکنم .... اگر کارایی این مورد زیاد باشه و باعث ایجاد راحتی کار بشه

  28. #68
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    الان دارم از bindingnavigator استفاده میکنم می خواهم قبل از حذف یک پیغام بده امدم و این کد را به رویداد کلیک حذف دادم اما قبل از پیغام رکورد را حذف میکنه بعد پیغام میده ؟؟؟ چه کنم ؟؟؟

       private void btnDelete_Click(object sender, EventArgs e)
    {
    DialogResult Result = MessageBox.Show("رکورد مورد نظر حذف شود ؟", "حذف رکورد", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);
    if (Result == DialogResult.No)
    {
    bsCustomer.CancelEdit();
    }
    }

  29. #69
    کاربر دائمی آواتار haniyehghassami
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    شیراز
    سن
    37
    پست
    138

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

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

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

    1 - من تو فرم مشتریم اشتباها tag هم به دیتا بیسم بایند کرده بودم که واسه همین خطای null reference میداد البته اگه تو جدول مشتریallow null را true میکردم خطای run time نمیداد اما در ازاش خطای دیگه ای اتفاق می افتاد اونم اینکه رشته ای خالی در جدولم ثبت میشد----> راه حلش هم این بود که من اشتباهی علاوه بر تکسته تکس باکسم ؛ تگ هم بایند کردم در نتیجه پاکش کردم درست شد.

    2 - در فرم محصولات بعد از اینکه دکمه ثبت داده را میزدم فرمم بسته نمی شد و برنامم هنگ می کرد بعد از اینکه با کمک استاد چک کردیم فهمیدیم که چون واسه قیمت محصول ما int تعریف کردیم و چون واسه امتحانی رشته وارد کردیم string را میخواسته جای int بگذاره که نمی شده واسه همین هنگ میکرد----> توی proprieties همون تکس باکس قیمت رفتم و گزینه ی causesValidation را false کنین..اما قبل این همه کار میشه توی keyPress تکس فیمت کذ زیر را نوشت واسه اینکه کاربر تنها قادر باشه عدد وارد کنه

    private void txt_gheymat_KeyPress(object sender, KeyPressEventArgs e)
    {
    e.Handled=(char.IsDigit(e.KeyChar)||char.IsControl (e.KeyChar))?false:true;
    }


  30. #70
    VIP آواتار gwbasic
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نقل قول نوشته شده توسط noroozifar مشاهده تاپیک
    الان دارم از bindingnavigator استفاده میکنم می خواهم قبل از حذف یک پیغام بده امدم و این کد را به رویداد کلیک حذف دادم اما قبل از پیغام رکورد را حذف میکنه بعد پیغام میده ؟؟؟ چه کنم ؟؟؟

       private void btnDelete_Click(object sender, EventArgs e)
    {
    DialogResult Result = MessageBox.Show("رکورد مورد نظر حذف شود ؟", "حذف رکورد", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);
    if (Result == DialogResult.No)
    {
    bsCustomer.CancelEdit();
    }
    }
    مرسی به مورد جالبی اشاره کردی. متاسفانه این bindingNavigator این ضعف رو داره که اول آیتم جاری رو پاک می کنه بعدا کد های شما اجرا می شه و حتی BindingSource‌ هم بهتون کمک نمی کنه چون توی رویداد ListChanged تغییرات اعمال شده (یعنی آیتم پاک شده) بنابراین باز شما نمی تونی با کد جلوی پاک شدن رو بگیری !!!
    یک راه ساده اینه که شما bindingnavigator رو انتخاب کرده و در پنجره Properties روی DeleteItem کلیک کرده و مقدار اونو پاک کنی این کار باعث می شه که فقط کدهای شما اجرا بشه ودر نهایت کدتون رو به شکل زیر تغییر بدین

    if (bsCustomer==null)
    return;
    if (bsCustomer.Current==null)
    return;
    DialogResult Result = MessageBox.Show("رکورد مورد نظر حذف شود ؟", "حذف رکورد", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2);
    if (Result == DialogResult.Yes)
    {
    bsCustomer.RemoveCurrent();
    }

    که البته راه کثیفی هست.

    احتمالا یک BindingNavigator مناسب برای این حالت و همچنین با قابلیت ویرایش و لغو بنویسم

  31. #71
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    فکر کنم به روش قدیمی بریم بهتره یعنی از BindingSource‌ و bindingnavigatorکلا استفاده نکنیم و تمامی کدها را با بهره گیری از EF خودمان بنویسیم ...

    یک سئوال پیش امده برام که اگر ما بخواهیم یک جدول جدید را به model اضافه کنیم چه باید کرد .. آخه زمان ایجاد EF model ما فقط همان جدولهایکه از قبل در بانک تعریف شده اند را انتخاب و به مدل اضافه میکنیم ... حالا اگر جدول یا پروسیجر جدید ایجاد کرده باشیم در بانک باید چه کرد ؟؟؟

  32. #72
    VIP آواتار gwbasic
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    وقتی database رو تغییر بدی می تونی توسط EDM Designer مدل ها تو Update‌ کنی.

    BindingSource و BindingNavigator تعریف و کاربرد خودشونو دارن. اگه سر کلاسم بودی حتما سرت داد می زدم امیدوارم ویدیو جدید که تا چند دقیقه دیگه می ذارم مشکلتو حل کنه. تا وقتی نصفه نیمه بخوای هر چیزی یاد بگیری یا در حدی که کارتو بخواد راه بندازه همینطوری می شه باید همه چیزو کنار بذاری

  33. #73
    کاربر دائمی آواتار noroozifar
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    کرمان
    پست
    446

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    باید همه چیزو کنار بذاری
    نه کنار نمیگذارم هرگز باید یاد بگیرم

    منتظر ویدئو هستم
    آخرین ویرایش به وسیله noroozifar : چهارشنبه 16 آذر 1390 در 12:30 عصر

  34. #74
    VIP آواتار gwbasic
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    سن
    42
    پست
    982

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    ویدیوی جدید رو توی تاپیک اصلی گذاشتم
    https://barnamenevis.org/showthread.p...71#post1376271

  35. #75
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    قائمشهر
    پست
    268

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    سلام
    من می خواهم این فیلم های آموزشی را دانلود کنم . اما نمیشه.
    مشکل از کجاست؟
    اگر امکانش هست در جایی دیگر...
    تشکر

  36. #76
    کاربر دائمی آواتار electro_esma
    تاریخ عضویت
    شهریور 1390
    محل زندگی
    تهران
    پست
    236

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    با تشکر از استاد gwbasic لطفا از بحث های جانبی ناراحت نشید . با این که من این روز ها به دلایلی وقتم خیلی کم شده ولی خداشاهده که اگه شده چند

    دقیقه ای هم که شده می یام و صحبت های شما رو نگاه می کنم .

    خدا قوت .

    بحث های حاشیه ای همیشه هست استاد بزرگوار ... و من ا.. توفیق

  37. #77
    کاربر دائمی آواتار uniqueboy_ara
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    تهران
    پست
    420

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    آقا من یه سوال فنی داشتم، کار این "_" چیه؟؟؟ که قبل از بعضی متغییر ها موقع تعریفشون میزارن؟؟؟

  38. #78
    کاربر دائمی آواتار wolf_majid
    تاریخ عضویت
    آذر 1387
    محل زندگی
    اصفهان
    پست
    534

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    معمولا" برنامه نویسان برای متغیرهای private میذارند
    دلیلش هم اینه که با یک _ متغیرهایی که خودشون تعریف کردند رو می بینند و با سایر متغیرها و متدها و ... متمایزشون می کنند

  39. #79
    کاربر دائمی آواتار linux
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    تهران
    پست
    2,313

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نقل قول نوشته شده توسط gwbasic مشاهده تاپیک
    ویدیوی جدید رو توی تاپیک اصلی گذاشتم
    https://barnamenevis.org/showthread.p...71#post1376271
    خیلی داری زحمت می کشی برای آموزش به بقیه ولی من دوست داشتم که کمی روی طراحی سه لایه ، الگوهای طراحی، و این چیزها وقت بگذاری، واقعا نیاز خیلی از برنامه نویس ها هست، اکثر دوستان این مدل برنامه می نویسند. پروژه ای برای همین کار ایجاد کردم چندتا نکته کوچک هست اگر تمام شود بزودی اینجا قرار می دهم.

  40. #80
    مدیر بخش آواتار mmd2009
    تاریخ عضویت
    اردیبهشت 1403
    محل زندگی
    تهران
    پست
    2,393

    نقل قول: سوال و جواب های ساخت پروژه ثبت سفارشات

    نقل قول نوشته شده توسط linux مشاهده تاپیک
    خیلی داری زحمت می کشی برای آموزش به بقیه ولی من دوست داشتم که کمی روی طراحی سه لایه ، الگوهای طراحی، و این چیزها وقت بگذاری، واقعا نیاز خیلی از برنامه نویس ها هست، اکثر دوستان این مدل برنامه می نویسند. پروژه ای برای همین کار ایجاد کردم چندتا نکته کوچک هست اگر تمام شود بزودی اینجا قرار می دهم.
    با سلام

    فکر خیلی خوبیه. من معماری پیشنهادی مایکروسافت رو برای این کار پیشنهاد میکنم

    موفق باشید

صفحه 2 از 5 اولاول 1234 ... آخرآخر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •