View Full Version : انتقال داده ها ازیک نرم افزار تحت ویندوز به یک برنامه تحت وب
fatemesoleimani
یک شنبه 15 دی 1392, 21:45 عصر
با سلام و خسته نباشید
چطوری داده های یه جدول تو یه برنامه تحت ویندوز که با سی شارپ هست را به یک جدول تو یک برنامه تحت وب با اینترا وب در حالت افلاین انتقال بدیم ؟
با تشکرو سپاس فراوان
mrm0101
دوشنبه 16 دی 1392, 00:05 صبح
با سلام
اطلاعات توی برنامه دلفی یا سی شارپ ذخیره نمی شود بلکه توی دیتابیس ذخیره می شود . برای انتقال اطلاعات از دیتابیس محلی به دیتابیس سرور (اس کیو ال سرور )چندین راه وجود دارد.
1- بکاب گیری از بانک محلی و ریستور در سرور(
2-خروجی اطلاعات بصورت اکسل و تغذیه در سرور
3- ارتباط دو جدول اس اکیو ال سرور از طریق اینترنت ( باید در سرور پورت 1433 باز باشد که از راه دور به آن ارتباط داد که معمولا چنین اجازه ای به شما نمی دهند)
4- استفاده از تکنولوژی Datasnap توی اینترنت سرج بکنید برنامه های سه لایه
5- استفاده از replication
BORHAN TEC
دوشنبه 16 دی 1392, 09:40 صبح
سلام
جناب mrm0101 اطلاعات خوبی دادید ولی در خصوص جمله زیر:
4- استفاده از تکنولوژی Datasnap توی اینترنت سرج بکنید برنامه های سه لایه
باید عرض کنم که به کارگیری عبارت "لایه" اصلاً درست نیست. توجه کنید که در حوزه نرم افزار عبارت Layer با Tier کاملاً متفاوت است و در اینجا شما باید از عبارت Multi-Tier استفاده کنید.
لایه یک تقسیم بندی منطقی است و tier یک تقسیم بندی فیزیکی است. نتیجه یک برنامه چندلایه می تواند فقط یک فایل فایل اجرایی باشد! ولی در برنامه های چند ردیفه یا Multi-Tier اینطور نیست و برنامه می تواند به صورت چند تکه باشد که بخشی از آن ممکن است در یک کامپیوتر (یا موبایل یا ...) و بخش دیگر در یک کامپیوتر(یا موبایل یا ...) دیگر اجرا شود. توجه داشته باشید که هر قسمت از یک برنامه Multi-Tier میتواند به صورت چند لایه پیاده سازی شود. در عمل مهمترین اهداف یک برنامه چندلایه بالابردن خوانایی کد و همچنین متمایز کردن UI از قسمت کد برنامه یا منطق برنامه است به گونه ای که بتوان با زحمت خیلی کم یک برنامه دسکتاپ را به یک برنامه تحت وب تبدیل کرد و برعکس.
fatemesoleimani
دوشنبه 16 دی 1392, 11:25 صبح
ممنون از راهنماییتان
1)ایا راهی هست که وقتی تو سی شارپ داریم اطلاعات را ثبت می کنیم اطلاعات از برنامه تحت ویندوز به وب سایت منتقل بشه؟ یعنی در این روش باید اطلاعات را به اکسل منتقل کنم.
چطوری اطلاعات را به صورت افلاین انتقال بدهم
2}در روش دیگه روی سرور باید دوتا دیتا بیس باشه یکی دیتا بیس مربوط به سایت و دیگری دیتا بیس مربوط به نرم افزار تحت ویندوز که باید برای برنامه تحت وب در جایی که نیاز داریم یه کانکشن دیگه برای دیتا بیس دوم بگذاریم که باید از دیتا بیس تحت ویندوز اطلاعات را یکباره ثبت کنه.
من می خوام بعد از اینکه همه رکورد ها را در یک جدول تو برنامه تحت ویندوز ثبت کردم هر هفته یکبار اطلاعات را به سایت منتقل کنم . اگه میشه بیشتر راهنمایی کنید
با تشکر و سپاس فراوان
mrm0101
دوشنبه 16 دی 1392, 17:56 عصر
سلام
اگر می مخواهید هفته ای یک بار اطلاعات به برنانه توی سایت منتقل بشوند کافی است از اس کیو ال سرور برنامه محلی بکاب بگیرید و این فایل را روی سرور ریستور بکنید
firststep
دوشنبه 16 دی 1392, 17:56 عصر
اصلاً اینطور نیست شما می تونین به در اینتراوی یا حالا همون سایتتون که می تونه با هر زبونی باشه ( asp,php ) همون دیتابیسی متصل بشین که توی مثلاٌ c# بهش متصل شدین
پس دیتابیس ها می توننن یکی باشن
firststep
دوشنبه 16 دی 1392, 18:03 عصر
اها مثلا منظورتون اینه که داده ها رو اول توی یک کامپوتر به صورت محلی save کنین (اون جا رو با C# کار کردین) سپس در فرصت مناسب اطلاعات رو به سروری که در اون اینتراوب نصب هست انتقال بدین
خوب اما نگفتین خروجی C# چیه یا به عبارت دیگر دیتابیس که C# چیه و دیتابیس intraweb تون چیه؟؟؟ بگین تا بگم بهتون
mrm0101
دوشنبه 16 دی 1392, 18:07 عصر
حضور محترم جناب :r0leX (http://barnamenevis.org/member.php?75214-r0leX) http://barnamenevis.org/images/statusicon/user-offline.png
با عرض سلام و ادب و تشکر از راهمایی جامع شما
منطور امن از datasnap بر نامه ای لایه ای همون Multi-Tier است که در ورژن 7 دلفی بنام midas شناخته می شد . در برنامه های لایه ای کاربر بصورت مستفیم با دیتابیس روی سرور ارتباط برقرار نمی کرد . یک برنامه کوچک واسطه بین دیتابیس و اپلیکیشین اصلی قرار می گرفت جهت امینت دیتابیس و کنترل صحت ورود اطلاعات
در مورد سئوالتون : مخفی کردن آدرس فایل موقع دانلود با امکان دانلود فایل مربوطه به صورت تکه تکه (http://barnamenevis.org/showthread.php?433369-%D9%85%D8%AE%D9%81%DB%8C-%DA%A9%D8%B1%D8%AF%D9%86-%D8%A2%D8%AF%D8%B1%D8%B3-%D9%81%D8%A7%DB%8C%D9%84-%D9%85%D9%88%D9%82%D8%B9-%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%D8%A8%D8%A7-%D8%A7%D9%85%DA%A9%D8%A7%D9%86-%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%D9%81%D8%A7%DB%8C%D9%84-%D9%85%D8%B1%D8%A8%D9%88%D8%B7%D9%87-%D8%A8%D9%87-%D8%B5%D9%88%D8%B1%D8%AA-%D8%AA%DA%A9%D9%87-%D8%AA%DA%A9%D9%87)
اگر منطورتون توی پروژه های اینتراوب است من توی پروژه هام لیست فایل ها را دریک جدول دیتابیس ذخیره می کنم . برای هر کاربر وقتی می خواد فایل را دانلود بکند بصورت رندم یک اسم اختصاص می دم و فایل اسم فایل رو برای هر کاربر تغییر می دهم که کسی با دونستن ادرس فایل ها نتونه هر فایلی خواست دانلود بکند . بعنی هر کاربر موفع دانلود می تواند فقط یک اسم برای فایل داشته باشد
با ارزوی موفقیت
fatemesoleimani
دوشنبه 16 دی 1392, 18:56 عصر
بله منظورم همین هست ؟ فرض کنید بانک اطلاعاتی sql باشه.
firststep
دوشنبه 16 دی 1392, 23:43 عصر
ببینید اگر قرار است ساده کار کنید اطلاعاتتون رو توی یک فایل تکست بریزید -- منظوره من تک به تک رکورد ها و سپس توسط یک نرم افزار سوم که کارش اپدیت سازی هست (اونجایی که دسترسی دارین به اینترنت) اطلاعات تک به نک رکوردها رو بگیرین و درون دیتابیستون اینسر تش کنیین>>> البته می تونین به جای استفاده از برنامه سوم می تونین از خوده اینتراوب هم استفاده کنین که توصیه نم کنم اون شکلی راحت ترید<<<
حالا باز هم را ه حل هایه دیگه ای هم هست اما چون اظلاعاتم زیاد نیست نمی تونم بیشتر از این ...
اگر دیتابیس c# هم اکسس باشه خوده فایل اکسس رو انتقال بدین به برنامه سوم و بعد از خوده اکسس رکورد رکورد بخونین وانتقال بدین دیگه نیاز به فایل تکسن نیست....
یوسف زالی
سه شنبه 17 دی 1392, 00:38 صبح
سلام.
نمی فهمم چرا سوالات سی شارپ اینجا مطرح می شه؟
در هر صورت در تکمیل فرمایشات دوستان عزیز؛ روشهای زیادی وجود داره که به نظر من بهترینش استفاده از وب سرویس است.
با استفاده از XML هم می شه که صورت ضعیف همون وب سرویسه.
حتی با متدهای get و post هم می شه دیتا فرستاد. در هر حال برنامه ای که روی سرور وجود داره چیه؟
اگر وب پیجه، وب سرویس بهترین گزینه،
اگر اپلیکیشنه، کانکت با استفاده از کامپوننت های سوکت،
اگر فقط دی بی ام اسه، و اجازه کانکت مستقیم دارید، کانکشن استرینگ و اتصال مستقیم،
اگر اجازه اتصال ندارید انتقال خود دی بی روی یکی از فولدر های سرور،
اگر هیچی هم ریموت روی سرور!!
شما دقیق مشخص کن چی می خواهی، چی داری، تا دوستان راهنمایی موضوعی و دیتیل تری کنند.
fatemesoleimani
سه شنبه 24 دی 1392, 12:55 عصر
من فعلا بدون استفاده از برنامه ویندوز می خوام با استفاده از خود sql در حالتی که به اینترنت وصل نشم داده ها را از sql به sql که تو اینترنت اپلود شده منتقل کنم با استفاده از ssis package تو خود sql کسی تا حالا این کار را کرده یعنی از طریق export دیتا بیس جدول مربوطه را به sql که انلاین هست و روی وب هست منتقل کنه تو روش export گزینه .netframework که از destinatiom انتخاب می کنیم ایا برای این کار هست اگه کسی با استفاده از این روش داده ها را انتقال داده یه راهنمایی کنه ایا این روش برای حالت که به اینترنت هم وصل نباشیم داده ها را منتقل می کنه ؟work station id تو این روش برای چیه ؟ دوستان راهنمایی کنید
با تشکر و سپاس فراوان
یوسف زالی
سه شنبه 24 دی 1392, 13:12 عصر
خب باز هم بی ارتباط با بخشه.
در تالار اس کیو ال پیگیری کنید.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.