ورود

نسخه کامل مشاهده نسخه کامل : برنامه رزرو بلیط هواپیما



silvery1
07-07-2014, 10:15
سلام.من یه برنامه نوشتم با عنوان رزرو بلیط هواپیما اما به چندتا مشکل برخوردم.
اول اینکه چیزایی که دستی به پایگاه داده اضافه کردم همیشه نشون داده میشن اما برعکس وقتی اطلاعاتمو به data grid view اضافه میکنم بعد از چندبار که برنامه رو باز و بسته میکنم اون اطلاعات دیگه وجود ندارن!این درحالیه که برنامه به پایگاه داده متصله و مشکل دیگم در مورد گزارش گیریه که با اینکه من میخوام از جدولی ک وجود داره گزارش بگیرم میگه گزارش هیچ جدولی نداره.
واسه اینکه با کلیک روی دکمه ی close فرمی غیر از فرم پیشفرض برنامه بسته بشه باید کدشو توی کدوم event فرم بنویسم؟من توی formclosed مینویسم اما عمل نمیکنه
ممنون میشم اگه کسی بتونه کمکم کنه
PlaneTicket.zip - 5.0 MB ([ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ])

Msba
07-07-2014, 16:20
این نکات را بررسی کنید:
- در هنگام بستن فرم اطلاعات موجود در گرید را به دیتابیس منتقل می کنید؟ (می توان با استفاده از متدی نظیر update در TableAdaptor این کار را انجام داد.)
- در هنگام Biuld کردن پروژه در VS ممکن است نیاز باشد تا DB مجدد بارگذاری شود و گاها شما با دیتابیس خالی مواجه می شوید. (این عمل به صورت مستقیم توسط Clean Project نیز قابل دسترسی است)
------------------------
در همان FormClosed می باشد اما رویدادتان که نوشتید به فرم متصل نیست. مجدد آنرا توسط event در Properties فرم ایجاد کنید.

موفق باشید.

silvery1
08-07-2014, 08:36
این نکات را بررسی کنید:
- در هنگام بستن فرم اطلاعات موجود در گرید را به دیتابیس منتقل می کنید؟ (می توان با استفاده از متدی نظیر update در TableAdaptor این کار را انجام داد.)
- در هنگام Biuld کردن پروژه در VS ممکن است نیاز باشد تا DB مجدد بارگذاری شود و گاها شما با دیتابیس خالی مواجه می شوید. (این عمل به صورت مستقیم توسط Clean Project نیز قابل دسترسی است)


ممنون از راهنماییتون
اینکه گفتین از update استفاده کنم ینی داخل dataset این متد رو استفاده کنم؟با استفاده از add Query ؟
چطوری میتونم به clean project دسترسی داشته باشم؟اینکه نمیتونم گزارش بگیرم به این موضوع مربوطه؟

Msba
08-07-2014, 16:37
برای آپدیت راحت ترین راه مانند زیر است:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
از منوی Debug گزینه ی Clean Solution که فایل های ساخته شده ی عمل Build و دیتابیسی هم که در پوشه ی debug و یا release را نیز پاک می کند.
برنامه ی تان را در حالت اصلی تست کنید اینگونه هیچگاه احتمال چنین موضوعی وجود ندارد. مثلا برنامه را با ctrl+F5 اجرا کنید و دیگر با VS کاری نداشته باشید. بعد از بستن برنامه نیز مجدد با ctrl+F5 اجرا کنید و در این حالت با VS اصلا نباید عمل Build انجام دهد. برای سهولت VS را ببندید و برنامه را مستقیما اجرا کنید و بارها و بارها برای تست باز و بسته کنید. اینگونه احتمال clean شدن از بین می رود.

موفق باشید.

silvery1
09-07-2014, 08:47
برای آپدیت راحت ترین راه مانند زیر است:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

وقتی میخوام از این روش استفاده کنم dataset اصلا گزینه های haschange و getchange رو نداره و یه چیز دیگه اینکه من فرضا وقتی از کد insert واسه درج اطلاعات استفاده کردم پس مشکل چیه که درج نمیشه؟یعنی حتما نیاز به update داره؟
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]



برنامه ی تان را در حالت اصلی تست کنید اینگونه هیچگاه احتمال چنین موضوعی وجود ندارد. مثلا برنامه را با ctrl+F5 اجرا کنید و دیگر با VS کاری نداشته باشید. بعد از بستن برنامه نیز مجدد با ctrl+F5 اجرا کنید و در این حالت با VS اصلا نباید عمل Build انجام دهد. برای سهولت VS را ببندید و برنامه را مستقیما اجرا کنید و بارها و بارها برای تست باز و بسته کنید. اینگونه احتمال clean شدن از بین می رود.


وقتی برنامه رو با CTRL+f5 اجرا میکنم بازم عمل build انجام میشه.
چطور برنامه رو مستقیم اجرا کنم؟در هر حال برنامه از طریق VS اجرا میشه

Msba
09-07-2014, 17:03
شما باید instance مربوط به Dataset رو استفاده کنید یعنی همانی که به Grid متصل است نه خود کلاسش رو. به صورت پیش فرض تفاوتش این است که حرف اول آن با حروف کوچک است.




چطور برنامه رو مستقیم اجرا کنم؟در هر حال برنامه از طریق VS اجرا میشه

به آدرس برنامه بروید و دستی اجرا کنید. این را در قبل هم گفتم. برای سهولت VS را ببندید( یا minimize کنید) بعد به محل پروژه بروید و فایل exe ساخته شده را دستی اجرا کنید.
حتما می پرسید:


پس تغییراتی که در کد میدهم را چگونه ببینم؟

شما یک backup ساده از دیتابیس بگیرید. از فایل های mdf و ldf کپی بگیرید. اینگوه هر وقت اطلاعات پرید این دو فایل را جایگزین کنید و مجدد برنامه را اجرا کنید.(این کار به عنوان روش backup گیری اصلا صحیح نیست اما در اینجا روشی مناسب خواهد بود.) اگر اطلاعات لود شد که احتمال clean شدن حتمی بوده است.

موفق باشید.