نمایش نتایج 1 تا 17 از 17

نام تاپیک: اشتراک گذاری لیست از داده ها بین چند پروژه

  1. #1
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    37
    پست
    707

    اشتراک گذاری لیست از داده ها بین چند پروژه

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

  2. #2

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

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

  3. #3
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    37
    پست
    707

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    یا به صورت پراپرتی و یا متدهایی برای دسترسی به لیست بایست بنویسید که قابل دسترس از خارج کلاس باشد.

    ایا باز هم پروپرتی به صورت استاتیک باشه؟ بیشتر دوست داشت با این سوال ازت تشکر کنم. که پاسخ دادی تو استک اورفلو پرسیدم کسی جواب نداد!
    https://stackoverflow.com/questions/...kets-websocket

  4. #4

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    نقل قول نوشته شده توسط arman_Delta2002 مشاهده تاپیک
    ایا باز هم پروپرتی به صورت استاتیک باشه؟ بیشتر دوست داشت با این سوال ازت تشکر کنم. که پاسخ دادی تو استک اورفلو پرسیدم کسی جواب نداد!
    https://stackoverflow.com/questions/...kets-websocket
    سوالتون توی استک کامل هست ولی اینجا ناقص. یکبار به فارسی کامل توضیح بدید.
    آخرین ویرایش به وسیله Mahmoud.Afrad : دوشنبه 08 بهمن 1397 در 21:05 عصر

  5. #5
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    37
    پست
    707

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    من مثال اماده کردم
    یک کلاس دارم (Class1) و از اون یک لیست دست کردم در پروژه LL و در 2 پروژه مجزا یکی ویندوز فرم و یکی wpf . میخوام مثلا تو ویندوز فرم به لیست اضافه کنم ولی تو پروژه wpf جواب بگیرم یا برعکس
    دقت داشته باشین نمیشه Class1 رو سریالایز کرد!(چون وب سوکت سریالایز نمیشه!)
    shareTest.zip

    تو اسک اور فلو هم این رو گفتم:
    چون من برنامه نویسی لایه ای انجام میدم نیاز دارم لیست وب سوکت ها بین پروژه هام به اشتراک گذاشته بشه
    هر کلاینت(android) وصل میشه به پروژه Asp.netCore و یک وب سوکت به لیستی در لاجیک لایر اضافه میشه.
    من میخوام که کاربر ها رو از طریق پروژه WPF مدیریت کنم مثلا به فلان کاربر پیامی بفرستم یا به یک دسته خواص
    ولی چون لاجیک لایر من add Refrence میشه به پروژه wpf در واقع یک لایه لاجک مجزا از اونی که به asp.netcore متصله سازته میشه و همیشه لیست موجود(لاجیک) در wpf خالی هست با این که لیست موجود (لاجیک)در asp.netCore داده دارد.
    خواستم از طریق WCF سرویس این مشکل رو حل کنم ولی باز چون کلاس وب سوکت سریالایزبل نیست موقه برگشت داده سرویس خطا میده و میگه نمیتونه وب سوکت رو متقل کنه !

    و چون وب سوکت سریالایز نیست نمیشه به صورت ارایه ای از بایت در بیارم و در پایگاه داده یا فایل ذخیره و بازیابی کنم !
    خواستم اتریبیوت سریالایز به وب سوکت اضافه کنم جواب نداد !
    سورس یک وب سوکت رو گیر اوردم روی تمام کلاس اش اتریبیوت سریالایز گذاشتم ولی چون باز کلاس های دیگه ای از سیستم مثل IPAddress و ... سریالایزبل نبودن باز خطا میداد و نمیشد !
    Aa.jpg
    تو تصویر بالا لیست سوکت ها رو لایه لاجیک داده بقیه پروژه ها باید از اون بخونن

    یه سوالی که واسم پیش اومده اینه که مگه تمام داده های کامپیوتر 0 و 1 نیست؟ پس چرا یک کلاس مزخرف رو نمیشه به 0 و 1 در سی شارپ تبدیل کرد و باز بازیابیش کرد ؟!

    چه راه کاری میدونین که میشه این مشکل رو حل کرد ؟
    احتمال زیاد من کلا مشکل رو بد حل کردم ! و یه راه کار بهتر وجود داره.
    آخرین ویرایش به وسیله arman_Delta2002 : سه شنبه 09 بهمن 1397 در 09:29 صبح

  6. #6

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    خب websocket یک سری خصوصیات داره که ست میشه
    اون خصوصیات رو توی یک کلاس ذخیره و سریالیزه کنید و ادامه کار
    مثلا IP, Port, ....

  7. #7
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    37
    پست
    707

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    نقل قول نوشته شده توسط hamid_hr مشاهده تاپیک
    خب websocket یک سری خصوصیات داره که ست میشه
    اون خصوصیات رو توی یک کلاس ذخیره و سریالیزه کنید و ادامه کار
    مثلا IP, Port, ....
    یعنی باید برای کلاینت ها سرور دریافت بنویسم؟

  8. #8

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    در این حالت بهترین کار این هست که یک پروژه class library ایجاد کنید (مثلا به نام common ). توی این پروژه اینترفیس و کلاسی ایجاد کنید که بتونه مشخصات کلاینتها رو نگهداری کنه و البته بشه سریالایزش کرد. هر چیزی که سرور و برنامه در اون مشترک هستند را میتونید به این پروژه اضافه کنید.
    پروژه بالا رو در هر دو پروژه asp , wpf به رفرنس اضافه کنید. برای ارسال لیست کلاینتها از لیستی از این کلاس استفاده کنید.

  9. #9

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    نقل قول نوشته شده توسط arman_Delta2002 مشاهده تاپیک
    یعنی باید برای کلاینت ها سرور دریافت بنویسم؟
    ببینین شما میگین سریالیزه نمیشه
    بیاین خصوصیاتشو توی یک کلاس که خودتون درستش کردن بریزین و اونو سیریالیزه کنید و بفرستید برای اون نرم افزار دیگه خودتون و اونجا دوباره شی وب سوکت را ایجاد و خصوصیاتی رو که دریافت کرده اید رو ست کنید و ادامه کار

  10. #10
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    37
    پست
    707

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    نقل قول نوشته شده توسط hamid_hr مشاهده تاپیک
    ببینین شما میگین سریالیزه نمیشه
    بیاین خصوصیاتشو توی یک کلاس که خودتون درستش کردن بریزین و اونو سیریالیزه کنید و بفرستید برای اون نرم افزار دیگه خودتون و اونجا دوباره شی وب سوکت را ایجاد و خصوصیاتی رو که دریافت کرده اید رو ست کنید و ادامه کار
    میشه گفت خوصویت خواصی نداره مثل ادرس ایپی کلاینت یا پورت اتصال کلاینت
    از طرف کاربر یک کلاس {System.Net.WebSockets.ManagedWebSocket} دریافت میشه که فقط اطلاعات تایم اوت و utf و ... رو داره !

  11. #11
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    37
    پست
    707

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    در این حالت بهترین کار این هست که یک پروژه class library ایجاد کنید (مثلا به نام common ). توی این پروژه اینترفیس و کلاسی ایجاد کنید که بتونه مشخصات کلاینتها رو نگهداری کنه و البته بشه سریالایزش کرد. هر چیزی که سرور و برنامه در اون مشترک هستند را میتونید به این پروژه اضافه کنید.
    پروژه بالا رو در هر دو پروژه asp , wpf به رفرنس اضافه کنید. برای ارسال لیست کلاینتها از لیستی از این کلاس استفاده کنید.
    خیلی دوست داشتم این کار رو بکنم ولی هیچی نداره که بشه ازش استفاده کرد یه نگاه به کلاس {System.Net.WebSockets.ManagedWebSocket} بندازین متوجه میشن !

  12. #12
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    37
    پست
    707

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    آیا میشه یک سرور سوکت معمولی داشت و با وب سوکت کلاینت بهش وصل شد؟
    آیا میشه به این روش برنامه چت به صورت وب سایتی هم نوشت؟

  13. #13
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    37
    پست
    707

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    هیچ راهی واسه نگه داری و ارسال مجدد داده ها وجود نداره!
    من آیپی و پورت کلاینت رو دارم ولی نمیشه یک کانکشن کلاینت ساخت واسه ارسال پیام چون پروپرتی هاش نوع Get هست و Set نداره .
    وب سوکت های مختلفی رو تست کردم
    هیچ کدوم سریالایز نمیشن!
    و هیچکدوم نمیشه داده جدید ست کرد تا به کلاینت پاسخ برگردونه !
    مگر این که هر کلاینت یک سرور هم باشه ! واقاً مسخره است!

  14. #14
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    37
    پست
    707

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    تنها راهی که به ذهنم میرسه اینه که یه لاجیک تو سرویس وب سوکت درست کنم و یک اکانت با دسترسی مدیر بهش کانکت کنم هر سری خواستم یک سری دستورات رو لاجیک بفرسته از طریق این اکانت و جواب رو دریافت کنه واقا مسخره است !
    سرعت پایین میاد
    کد نویسی اشغال

  15. #15

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    سرور را نوشتید؟ تحت چه نوع پروژه ای ؟

    مدیر(wpf) چه کارهایی میتونه انجام بده؟

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

  16. #16
    کاربر دائمی آواتار arman_Delta2002
    تاریخ عضویت
    تیر 1387
    محل زندگی
    بابلسر
    سن
    37
    پست
    707

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    سرور را نوشتید؟ تحت چه نوع پروژه ای ؟

    مدیر(wpf) چه کارهایی میتونه انجام بده؟

    این رو هم بگم که سوکتی که بین کلاینت و سرور ایجاد میشه بایست توسط سرور کنترل بشه. اگر مدیر کاری میخواد انجام بده که روی ارتباط دیگران با سرور تاثیرگزار هست باید از سرور بخواد اون کار رو انجام بده.
    سرور را نوشتید؟ بله.
    تحت چه نوع پروژه ای ؟WCF service(جهت انجام کارهای اصلی پروژه درج و ویرایش ثبت) و asp.netCore(سوکت جهت ارسال نوتیفیکیشن به موبایل کاربر)
    مدیر(wpf) چه کارهایی میتونه انجام بده؟ تنظیمات کلی رو ویرایش میکنه (مانند حد نساب امتیاز کاربر و ...) و ارسال نوتیفیکیشن به یک کاربر خواص یا گروهی از کاربران که در حال حاظر آنلاین هستن. و لیست کاربران انلاین رو نشون میده
    مدیریت (WPF) کاری با کانفیگ های سرور نداره و فقط با داده های پایگاه داده و کلاینت های متصل کار داره و یک برنامه تحت ویندوز هست که فقط روی یک کامپیوتر خواص نصب میشه .

  17. #17

    نقل قول: اشتراک گذاری لیست از داده ها بین چند پروژه

    سوالتون مربوط به asp.net هست. تاپیک رو منتقل میکنم.

    قطعا باید کاربران احراز هویت کنید. مدیر هم یک کاربر با سطح دسترسی خاص هست.

    اگر از فریمورک SiignalR استفاده کنید نیاز به سر و کله زدن مستقیم با وبسوکت ندارید. مدیریت کاربران و ... راحت انجام میشه. یک نگاهی به مستنداتش بندازید. برای کانکت شدن wpf از این کلاینت و برای اندروید از این پکیج میتونید استفاده کنید.

    برای ثبت و ویرایش و ... هم میتوننید در همون پروژه asp.net core کد بنویسید. به مرور کدهای wcf را منتقل کنید به پروژه asp.net core و پروژه wcf را حذف کنید.

تاپیک های مشابه

  1. سوال: پیاده سازی نوع داده لیست کلی و پویا ( شبیه لیست در زبان LISP
    نوشته شده توسط hedieh_h در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 0
    آخرین پست: دوشنبه 15 تیر 1394, 17:19 عصر
  2. مشکل در کاستوم لیست ویو ! ادیت باکس تو آیتم ها ریست میشه
    نوشته شده توسط abbasalim در بخش Android Studio
    پاسخ: 1
    آخرین پست: پنج شنبه 30 بهمن 1393, 20:11 عصر
  3. پاسخ: 7
    آخرین پست: جمعه 03 بهمن 1393, 19:36 عصر
  4. پردازش 4 لیست نامرتب توسط 4 هسته CPU به 4 لیست مرتب و تبدیل آن به 1 لیست مرتب
    نوشته شده توسط mahdi.manian در بخش برنامه نویسی در 6 VB
    پاسخ: 4
    آخرین پست: دوشنبه 11 آذر 1392, 00:02 صبح

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

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