شوّيت: شبكة كرة قدم اجتماعية




العودة   سوالف سوفت > سوالف برمجة المواقع وتطويرها > ASP و ASP.NET
التسجيل المدوّنات البحث مشاركات اليوم جعل الأقسام مقروءة

الرد على الموضوع
 
LinkBack أدوات الموضوع
عضو نشيط جدا
#1  
مكتبة YahooWeather مفتوحة المصدر من برمجتي

السلام عليكم أخبار أعضاء سوالف جميعاً ... طيبين إن شاء الله

على العموم و بدون مقدمات فأنا أملك فن عدم إجادة المقدمات بدرجة إمتياز

قام أحد الأعضاء بطلب طريقة جلب الطقس من موقع yahoo Weather

و مواقع أخرى فقمت ببرمجة مكتبة كاملة لـ yahoo Weather بالإعتماد على yahoo Weather API
و ينقصها الشئ البسيط جداً و اتمنى من الأعضاء المشاركة بسد النقص


طريقة إستخدامها بسيطة جداً ما عليك سواء إضافة المكتبة إلى مشروعك

و من ثم إنشاء جديد للصنف YWClient الموجود في المكتبة

و الذي يحتوي على دالة واحدة GetForecast و تحمل متغيرين أحدهما إجباري
و الآخر اختياري

المتغير location و هو إجباري لإستقبال WOEID للمكان المراد عرض طقسه
المتغير type و هو اختياري و من النوع UnitType الذي يحتوي على:
Fahrenheit لطلب درجات الطقس بالفهرنهايت أو Celsius للدرجات المئوية و الإفتراضي
يكون Fahrenheit

و الدالة GetForecast تقوم بإرجاع متغير من النوع YChannel و الذي يحتوي على
كل ما تريده من الخدمة


مثال :
كود:
قمنا بتعريف متغير جديد للصنف YWClient
YWClient YWClient = new YWClient();

تعريق متغير جديد للدالة GetForecast 
الرقم 1939897 هو  WOEID لمكة المكرمة
YChannel YWChannel = YWClient.GetForecast("1939897", UnitType.Celsius);
الآن المتغير YWChannel نوعه YChannel الذي يحمل جميع المعلومات عن الطقس
لمكة المكرمة

و عندما نريد الحصول على درجة الحرارة المتوقعة سنقوم بكتابة التالي:

كود:
int temperature = YWChannel.Channel.Item.Condition.Temperature;
و ستكون درجة الحرارة بالمتغير temperature


لا نطول على الأعضاء
فكما قلت لا اجيد فن المقدمات و لا الكتابة و لا الشرح و إيصال المعلومة


هذا مثال قمت بعمله لمعرفة طريقة إستخدام المكتبة :






في النهاية هذا رابط لتحميل المكتبة + المثال بالأعلى و كلها مفتوحة المصدر

للتحميل اضغط هنا

و لا تنسونا و الأمة الإسلامية من دعواتكم


حفظكم الله.






عبدالله حسن is offline   قديم 12-04-2010, 03:15 AM
الرد مع إقتباس
عضو جديد
#2  

جربتها وعملت معي بشكل رائع

أخوي عبدالله أعتقد تحتاج تضيف استثناء عندما لايتوفر اتصال بالنت ، جرب تشغيله " أقصد البرنامج النموذج" وستحصل على رسالة خطأ

ملاحظة : لمن لا يوجد لديه Visual Studio

لتجربة البرنامج اذهب إلى

AbdullaHasan.YahooWeather\SimpleSwalifWeather\bin\Debug\SimpleSwalifWeather.exe






__________________
الإبداع أن تأتي بالمألوف بطريقة غير مألوفة :]

مدونة صفحتي

مدونة نشاطكم
عبدالله عبيد is offline   قديم 12-04-2010, 03:56 AM
الرد مع إقتباس
عضو نشيط
#3  

ماشاء الله تعمل بشكل رائع اخي جزاك الله كل الخير






__________________
شكرا سوالف سوفت

نجوم العرب
Rewish-Maxer is offline   قديم 12-04-2010, 04:03 AM
الرد مع إقتباس
عضو نشيط جدا
#4  

إقتباس:
المشاركة الأصلية بواسطة عبدالله عبيد مشاهدة مشاركة
جربتها وعملت معي بشكل رائع

أخوي عبدالله أعتقد تحتاج تضيف استثناء عندما لايتوفر اتصال بالنت ، جرب تشغيله " أقصد البرنامج النموذج" وستحصل على رسالة خطأ
تشرفت بمرورك أما الإستثناء فصحيح لكن ليست من المكتبة
فالمكتبة تقوم بعمل الإستثناء لكن المشكلة من المثال
و بما أنه مثال فلم أقم بتجربة جميع الإحتمالات و هذا يعود للمبرمج عند إستخدام المكتبة
و طريقة عرضه لرسالة معينة في حال لم يتواجد إتصال بالإنترنت

و نترك إضافة الإستثناء للبرنامج في حال لم يتوفر اتصال بالإنترنت
و بإمكان الأعضاء المحاربين و ليس الخبراء استخدام الدالة التالية:
حيث استخدمها في برامجي و لنرى ماذا سيفعل المحاربون

كود:
        public static bool IsConnectedToInternet()
        {
            bool status;
            isConnectionAvailable(out status);
            return status;
        }
        private static void isConnectionAvailable(out bool status)
        {
            status = false;
            string[] sitesList = { "www.google.com", "www.microsoft.com", "www.yahoo.net" };
            Ping ping = new Ping();
            PingReply reply;
            int notReturned = 0;

            try
            {
                for (int i = 0; i <= sitesList.Length; i++)
                {
                    reply = ping.Send(sitesList[i], 10);

                    if (reply.Status != IPStatus.Success)
                    {
                        notReturned += 1;
                    }

                    if (notReturned == sitesList.Length)
                    {
                        status = false;
                    }
                    else
                    {
                        status = true;
                        break;
                    }
                }
            }
            catch
            {
                status = false;
            }
        }
و كما قلت المكتبة تنقصها القليل منها دعم استخدام البروكسي للطلب و غيرها
و أيضاً هناك خصائص متعلقة بالتاريخ في المكتبة موجودة و لم أقم بتنشيطها
ووضعتها كتعليق لأني لم أجد الصيغة الصحيحة للتاريخ موقع Yahoo يقول
انه يستخدم الصيغة RFC822 للتاريخ لكن لم انجح في الوصول إلى الصيغة المطلوبة
رغم أني وضعت صيغتها كما هو مذكور في الموقع .


إن شاء الله في حال توفر لدي القليل من الوقت بالمستقبل أقوم بإضافة ما تم ذكره

إقتباس:
المشاركة الأصلية بواسطة Rewish-Maxer مشاهدة مشاركة
ماشاء الله تعمل بشكل رائع اخي جزاك الله كل الخير
و إياك أخي الكريم
تشرفت بمروك أيضاً.






عبدالله حسن is offline   قديم 12-04-2010, 06:12 AM
الرد مع إقتباس
عضو نشيط جدا
#5  

إضافات بسيطة للمكتبة
تم إضافة خاصية ImageURL لعرض صورة تعريفية لحالة الطقس

و أيضاًً تحديث المثال و استخدام الصور التوضيحية (المثال بسيط)





للتحميل اضغط هنا







آخر تعديل بواسطة عبدالله حسن في 12-04-2010 الساعة 09:12 AM.
عبدالله حسن is offline   قديم 12-04-2010, 09:11 AM
الرد مع إقتباس
عضو جديد
#6  

ماشاء الله
اخي الكريم انت وضعتها على فورم مثل ونديوز فورم
ماذا لوكنت اريد الواجهه صفحه ويب ماذا افعل؟

شكرا لك






Butter.fly is offline   قديم 12-04-2010, 08:51 PM
الرد مع إقتباس
عضو نشيط جدا
#7  

إقتباس:
المشاركة الأصلية بواسطة Butter.fly مشاهدة مشاركة
ماشاء الله
اخي الكريم انت وضعتها على فورم مثل ونديوز فورم
ماذا لوكنت اريد الواجهه صفحه ويب ماذا افعل؟

شكرا لك


و انت باقي تريد بناء موقع و تسئل هذا السؤال
لو قمت بالتجربة قبل ان تسئل لكان أفضل

المهم بإمكانك إستخدام مكتبة AbdullaHasan.YahooWeather مع تطبيقات الويندوز
أو تطبيقات الويب فلا يوجد هناك مشاكل


طيب بما أنك مشغول و لا تريد التعب قليلاً قمت ببناء مثال لتطبيق الويب
و هو بشكل مبسط و لا اريد أحد يقول ان المثال تنقصه الميزة الفلانية فهو يبقى مثال بسيط

هذه صورة توضيحية للمثال عن طريق المتصفح






للتحميل اضغط هنا - يحتوي الملف على: المكتبة + مثال لتطبيق ويندوز + مثال لتطبيق ويب






عبدالله حسن is offline   قديم 13-04-2010, 03:00 AM
الرد مع إقتباس
ليسامحني كل من اخطأت بحقه
#8  

كيف ندمجها مع ملفات البي اتش بي بارك الله فيك
و الله قبل يومين ابحث عنها.






وضاء is offline   قديم 13-04-2010, 07:04 AM
الرد مع إقتباس
عضو نشيط جدا
#9  

إقتباس:
المشاركة الأصلية بواسطة وضاء مشاهدة مشاركة
كيف ندمجها مع ملفات البي اتش بي بارك الله فيك
و الله قبل يومين ابحث عنها.
هي أنت تراك داخل قسم غير صحيح
نرجو من المتصفح إعادة التوجه إلى قسم انصار PHP

مرحبا فيك أخي وضاء
المكتبة خاصة بتطبيقات .NET فقط

لكن بإمكانك استخدام مكتبة ياهو YUI من هنـــــا
أو استخدم الكلاس التالي PHP Yahoo Weather Class
من الموقع الشهير تبعكم www.phpclasses.org

وفقك الله






عبدالله حسن is offline   قديم 13-04-2010, 09:46 AM
الرد مع إقتباس
عضو جديد
#10  

الله يعطيك الف عافيه

معليش تحملني انا مبتدئه






Butter.fly is offline   قديم 14-04-2010, 02:27 AM
الرد مع إقتباس
الرد على الموضوع


 

أدوات الموضوع

قوانين المشاركات
لا يمكنك كتابة مواضيع جديدة
لا يمكنك إضافة ردود
لا يمكنك إرسال مرفقات
لا يمكنك تعديل مشاركاتك

كود vB متاح
كود [IMG] متاح
كود HTML غير متاح
Trackbacks are متاح
Pingbacks are متاح
Refbacks are متاح


المواضيع المشابهه
الموضوع كاتب الموضوع القسم الردود آخر مشاركة
شبكة كاملة مفتوحة المصدر . كن من المتفوقين root1987 عروض البيع وطلبات الشراء في البرمجة والتصميم وبناء المحتوى وتبادل الاعلانات 0 15-04-2009 01:35 PM
مطلوب بنرات سويتش مفتوحة المصدر Panoramic التصميم والرسومات والمونتاج 1 03-11-2008 11:25 PM
هل الـ cpanel مفتوحة المصدر zuhair mashat الويب والويب 2.0 والـ Semantic Web 8 11-01-2006 08:46 PM
أنظمة SGBD مفتوحة المصدر. [مقارنة] mshjiouij الويب والويب 2.0 والـ Semantic Web 3 12-12-2005 03:03 PM
مجموعة ضخمة من ملفات ال php مفتوحة المصدر Hossam AL-Abdeh PHP 3 15-02-2005 11:42 AM


جميع الأوقات بتوقيت غرينتش +3. الوقت الآن هو 09:08 AM.