سلام
فقط در یک شرایط اطلاعات شما در VS خودکار و بدون فرمان مستقیم شما پاک میشود.
(که آن هم در دیتابیسهای SQLServer با حالت Attach شده مصداق ندارد.)
نقل قول:
نوشته شده توسط _H2_
ولی همچنان یک نکته ظریف دیگر وجود دارد که لازم است دقت کنید.
این مطلب اصلاً ربطی به ADO.Net ندارد و مربلوط به شرایط کاری و دیباگ خود VS است.
وقتی یک فایل دیتابیس را در پروژه تان در VS اضافه میکنید معمولاً Copy to Output Directory ان روی Copy Always ست میشود.
این تنظیم به این معنی است که هر بار که از داخل VS پروزه کامپایل (و سپس اجرا) میشود خودکار فایل قبلی موجود در دایرکتوری خروجی پاک شود و فایل جدید موجود در پروژه جایگزین آن شود. (و سپس برنامه اجرا شود)
این حالت معمولاً بسیار خوب و مفید است و باعث میشود هر تغییری در دیتابیس (جداول و فیلدها و رویه ها و... و...) اعمال کنید در اجرای بعدی دیده شود.
ولی اگر از ان اطلاع نداشته باشید سردرگمتان خواهد کرد.
یعنی اتفاقی که می افتد آناست که شما برنامه را از داخل VS اجرا میکنید و برخی آیتم ها وارد دیتابیس میکنید ولی در اجرای بعدی از داخل VS کل دایرکتوری قبلی حذف و کامپایل و فایل بانک اطلاعاتی خالی جدید جایگزین آن میشود.
پیشنهاد میکنم یکبار به جای داخل VS با MyComputer به محل پوشه bin محل پروژه بروید و از آنجا دستی فایل exe تان را چند بار اجرا کنید و ببینید تغییرات ذخیره میشود یا نه؟
(
البته با انتخاب فایل در SolutionExplorer میتوانید گزینه مذکور را در پالت Properties تغییر دهید.
ولی گزینه پیشفرض فعلی بد نیست.
)