صفحه 1 از 2 12 آخرآخر
نمایش نتایج 1 تا 40 از 73

نام تاپیک: وب سرویس Web service از آغاز تا پایان...

  1. #1

    وب سرویس Web service از آغاز تا پایان...

    در این تاپیک مروری بر وب سرویسها و طرز کار با آنها انجام می گیرد.
    امید است که مورد استفاده ی دوستان قرار گیرد.

    پیشاپیش هم از نظرات سازنده ی اساتید گرامی استقبال میشود.
    به امید فردایی بهتر...

  2. #2

    وب سرویس چیست؟ مقدمه

    یک وب سرویس به معنای ساده نوعی کامپوننت تحت وب است.
    این کامپوننت به application هایی که از آن استفاده می کنند این امکان را می دهد که بتوانند از متدهای این وب سرویس استفاده کنند.
    بهتر است وب سرویس را با یک مثال توضیح دهیم.
    فرض کنید شما می خواهید در web application خود وضعیت آب و هوای مناطق جغرافییای مختلف را داشته باشید. برای پیاده سازی چنین کاری شما دو راه دارید:
    1- خودتان وضعیت اب و هوا را از سایت های مختلف جمع آوری کنید و آنها را در web application خود استفاده کنید.
    2- از یک وب سرویس که آب و هوای مناطق جغرافیایی مختلف را می دهد استفاده کنید.

    در واقع این وب سرویس آب و هوا به تنهایی کاری نمی کند. بلکه توابعی دارد که توسط web application های مختلف صدا زده می شوند. که بعنوان مثال در اینجا وب سرویس وضعیت آب و هوا را برمی گرداند.
    البته وب سرویس ها استفاده های بسیار پرکاربردتر و مهمتری دارند مثل کار با دیتابیس و ... که در اینجا فقط یک مثال برای روشن شدن موضوع ذکر شد.

    اما مزیت اصلی استفاده از وب سرویسها:
    عدم نیاز به کدنویسی مجدد.

    شاید بسیاری از دوستانی که OOP کار کارده اند بگویند که اینکار با کلاس هم امکانپذیر است. بله امکانپذیر است اما:
    1- در برنامه نویسی با کلاس شما باید کلاستان را در هر پروژه add کنید ولی در وب سرویس فقط کافیست از متدها استفاده کنید.
    2- در کار با کلاسها شما ممکن است در application های مختلف به روشهای مختلف با کلاسهای متفاوت کار کنید. یعنی به عبارتی کار شما هر بار متفاوت است و این خوانایی را پایین می آورد و همچنین توسعه را مشکل می سازد. اما در استفاده از وب سرویس شما هربار فقط با یک وب سرویس خاص کار می کنید و طبق همان متدهای خاص وب سرویس کار می کنید حالا در هر کجا و هر application که باشید.
    3- وقتی با سرویس کار می کنید یک سری استانداردهایی در استفاده وجود دارد که تمام application ها باید از آن تبعیت کنند و بنابراین reusability بالا می رود.
    4- و ....


    و اما بعضی واژگان در ارتباط با Web Service :
    XML:
    Extensible Markup Language

    یک زبان markup است که یک فرمتی را برای توصیف داده ها فراهم می کنید. شبیه html است شامل تگ ها و ...

    SOAP :
    Simple Object Access Protocol

    در واقع پروتکل ارتباطی است برای وب سرویس مثل http برای وب و ...

    WSDL:
    Web Service Description Language

    یک xml document برای web service است که متدها و بعضی خصوصیات دیگر وب سرویس را توضیح می دهد.


    در قسمت بعد طرز ایجاد یک وب سرویس توضیح داده خواهد شد.

  3. #3
    بسیار عالی.
    موضوع فوق العاده بدرد بخوری رو انتخاب کردید.
    ما آماده هستیم برای درسهای بعدی.

  4. #4

    Creating WebService ایجاد وب سرویس

    لطف دارید. ممنون.
    ----------

    در این قسمت ایجاد وب سرویس با C#‎ code behind توضیح داده می شود البته با vs 2005 . در vs 2003 نیز بسیار شبیه به 2005 است.

    ابتدا به این قسمت بروید :
    File -> new -> website

    از پنجره نشان داده شده Asp.net Web Service را انتخاب کنید.(شکل 1 )



    حال در solution explorer فایلی با نام service.asmx می بینید که فایل اصلی webservice شما است و در واقع از کلاس service.cs که در پوشه ی app_code قرار دارد استفاده می کند.

    کلاس service.cs در 2005 یا service.asamx.cs در 2003 از namespace System.Web.Services.WebService مشتق می شود. و دارای متدهایی با تگهای [WebMethod] است. این متدها متهایی هستند که قابل استفاده توسط web application های دیگر هستند.
    حال برای نمونه یکبار webservice خود را run کنید. یک صفحه با آدرس http://..../service.asmx در browser نمایش داده می شود.
    شکل 2 یک نمونه وب سرویس است با عنوان SSO و متدهایی که در زیرش نشان داده شده.


    چگونگی ایجاد وب متد:
    نمونه کد زیر را ببینید:

    [WebMethod]
    public string HelloWorld() {
    return "Hello World";
    }


    وب متدها همانطوری که اشاره شد با تگ [WebMethod] شروع می شوند. و بسته به نیاز می توانند پارامتر بگیرند و خروجی برگردانند.

    برای اطلاعات بیشتر در مورد type پارامترها به آدرس زیر مراجعه کنید :
    http://samples.gotdotnet.com/quickst...vicetypes.aspx

    حال اگر متد بالا را در وب سرویس خود اجرا کنید می بینید که خروجی Hello World را داخل تگ های xml به شما برمی گرداند.
    دقت کنید که این نمایش از وب سرویس صرفا یک نمای ایجاد شده توسط مایکروسافت است و شما نمی توانید به اینصورت از وب سرئیس استفاده کنید. بلکه شما برای استفاده نیاز به استفاده از این متد ها در Web application خود دارید.


    اما پارامترهایی که در تگ وب متد بکار می روند:
    1- Description
    همانطوری که از نامش پیداست توضیحات مربوط به هر متد را مشخص می کند که این توضیحات در زیر هر متد در پیش نمایش و همچنین در فایل WSDL مربوط به وب سرویس قابل مشاهده است.

    2- EnableSession
    همانطوریک از نامش پیداست برای مدیریت Session ها بکار می رود.
    این متغیر در ابتدا Disable است که شما می توانید آنرا به Enable تغییر دهید.
    البته پیشنهاد می شود که اگر نیاز به استفاده از این امکان ندارید آنرا Disable بگذارید تا Performance کاهش نیابد.
    3-CacheDuration
    تعداد ثانیه هایی که یک response کش می شود.در حالت عادی صفر است یعنی response کش نمی شود.
    TransactionOption4-
    مدیریت تراکنش ها. در مورد تراکنش ها دوستان احتمالا اطلاعاتی دارند.
    یک تراکنش مجموعه ای از دستورات است که یا همه با هم اجرا می شود و یا هیچکدام انجام نمی شود. مورد استفاده ی این تراکنش ها بیشتر در کارت های اعتباری و ...
    بحث بیشتر در مورد تراکنش ها ما را از حوزه ی وب سرویس خارج می کند.
    5- BufferedResponse
    وب سرویس بصورت پیش فرض Response را بافر می کند و هرزمان بافر پر شد دوباره خالی می شود و ادامه می دهد. اما گاهی شاید شما در کار خودتان دیتاهای بزرگ و response بزرگی داشته باشید که بافرشدن آن کارایی را پایین بیاورد در چنین شرایطی شما می توانید این گزینه را false کنید .

    در بخش بعد درباره ی استفاده از یک وب سرویس در یک web application توضیح داده خواهد شد.
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: jpg Ws1.JPG‏ (76.5 کیلوبایت, 3647 دیدار)
    • نوع فایل: jpg ws2.JPG‏ (50.4 کیلوبایت, 3445 دیدار)

  5. #5

    استفاده از یک وب سرویس در web application (Consuming webservice)

    در قسمت قبل طریقه ی ایجاد یک وب سرویس را گفتیم. اما گفتیم که وب سرویس به تنهایی نمی تواند توسط کاربر استفاده شود بلکه باید یک web application آنرا Consume (استفاده) کند.

    حال یک web application ایجاد کنید.
    روی پروژه راست کلیک کنید و گزینه ی Add web reference را انتخاب کنید. پنجره ای مطابق با شکل 1 ظاهر می شود.


    اگر url وب سرویس را به شما داده باشند آنرا در قسمت url وارد کنید. و اگر که از روی localmachine بخواهید وب سرویس را جستجو کنید داخل همین پنجره گزینه ای برای آن وجود دارد. پس از انتخاب url وب سرویس یک نام به آن نسبت دهید این نام در واقع نام کلاسی است با عنوان proxy class که برای ارتباط با وب سرویس از طریق برنامه ی شما بکار می رود.

    حال شما می توانید از متدهای وب سرویس خود در برنامه استفاده کنید.
    این کد یک نمونه برای مثال است :

    private SSO.SSO sso = new WebLoginControl.SSO.SSO();
    UserId_int=sso.get_user_id(UserName_txt.Text,Passw ord_txt.Text);


    طرز کار ارتباط از web application به web service را در شکل زیر می بینید:
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: jpg ws3.JPG‏ (59.8 کیلوبایت, 3326 دیدار)

  6. #6

    SOA Service Oriented Architecture

    پس از یادگیری نحوه ی کار با وب سرویس ها اکنون بهترین زمان برای درک مفهوم پیشرفته و بسیار زیبای SOA است.



    با یک مثال شروع می کنیم:
    فرض کنید شما در حال نوشتن یک Web application برای مدیریت مسایل مالی هستید.
    در برنامه نویسی oop و یا چندلایه شما ابتدا پروژه را به چند لایه برای ارتباط با دیتابیس و business لایه و ... می شکنید و بعد شروع به کار میکنید.
    حال SOA چه می گوید:
    SOA که مخفف Service Oriented Architecture است به شما راهکاری برای متمایز کردن هر یک از این کارها در سرویس ها یا همان وب سرویس های مجزا می دهد. یعنی شما یک وب سرویس برای کار با دیتابیس. یک وب سرویس برای بعنوان مثال کارهای validation و... دارید و در برنماه ی خود از این وب سرویس ها استفاده می کنید.
    در این حالت شما امکان استفاده بارها و بارها از وب سرویس خود را دارید .

    در واقع SOA یک متد تقریبا جدید در توسعه نرم افزار است. و گفته شده تا سال 2008 بیش از 80 درصد پروژه های نرم افزاری از این متد استفاده خواهند کرد.

    اما چرا SOA :
    - فهمیدن بهتر سیستم
    - سازماندهی بهتر – تمرکز بیشتر روی توسعه ها
    - یکپارچه سازی ساده تر بین سیستم ها
    - بهتر شدن محدوده ی تست ها
    - Reusability بیشتر و بالاتر
    - افزایش قابلیت اعتماد
    - توسعه و develop فقط روی business plan متمرکز می شود.
    - و...

    شکل زیر یک SOA را نشان می دهد.



    برای آشنایی بیشتر با SOA :
    http://msdn.microsoft.com/architectu...tml/aj1soa.asp

  7. #7
    سلام
    عالیه آقای راد.
    خیلی خوبه همین طور به آموزش ادامه بدید.
    با تشکر از شما
    موفق باشید.

  8. #8
    خیلی ممنون .

  9. #9

    Schema در وب سرویس

    با عرض معذرت...
    من یه مدت سرم خیلی شلوغ بود و البته هنوز هم شلوغه...
    بخاطر همین نمی تونم با سرعت قبلی ادامه بدم. ولی هر زمانیکه وقت بشه ادامه میدم .

    همانطوریکه گفته شد SOAP ساختاری را برای ارسال داده ها و پیام ها بین وب سرویس و Web application ایجاد می کند.
    اما یک مشکل اینجا وجود دارد که با یک مثال توضیح داده شده است:
    شما ممکن است یک کلمه انگلیسی را بشنوید که در زبان کشور USA یک معنا بدهد و در زبان کشور UK معنای دیگر.

    دقیقا همین مشکل ممکن است در هنگام استفاده از وب سرویس اتفاق بیافتد. در واقع شما باید type و شکل message های ایجاد شده توسط وب متد ها را مشخص کنید تا استفاده کننده بداند که چطور باید آنها را معنا کند. این امکان توسط Schema فراهم می شود.
    به دو راه می توانید برای وب سرویس خود schema ایجاد کنید:
    - بصورت جدا در یک text editor (explicit)
    - بصورت استفاده از تگ ها داخل وب سرویس (implicit)

    در اینجا توضیح مربوط به Element ها و attribute ها را ارائه نمی کنم چون مربوط به بحث Xml می شود.دوستان برای مطالعه در این زمینه به مقالت xml مراجعه کنند.
    اما این یک کلاس ایجاد شده توسط تگ ها بصورت implicit است:

    [XmlRoot(“ServiceRequest”, Namespace=
    “urn-SampleSolution-Data”, IsNullable=false)]
    [XmlType(“ServiceRequest”, Namespace=
    “urn-SampleSolution-Data”)]
    public class ServiceRequest
    {
    #region Fields
    private string ticketNumber;
    private string accountNumber;
    private string accountName;
    private string serviceNotes;
    private string priority;
    private string contactMethod;
    private System.DateTime requestOpened;
    private int hrEmployeeId;
    private bool hrEmployeeIdSpecified;
    private string assignTo;
    private System.DateTime requestClosed;
    private bool requestClosedSpecified;
    private string resolutionNotes;
    #endregion

    #region Serializable Properties
    [XmlElement]
    public string TicketNumber
    {
    get { return this.ticketNumber; }
    set { this.ticketNumber = value; }
    }
    [XmlElement]
    public string AccountNumber
    {
    get { return this.accountNumber; }
    set { this.accountNumber = value; }
    }

    [XmlElement]
    public string AccountName
    {
    get { return this.accountName; }
    set { this.accountName = value; }
    }

    [XmlElement]
    public string ServiceNotes
    {
    get { return this.serviceNotes; }
    set { this.serviceNotes = value; }
    }

    [XmlElement]
    public string Priority
    {
    get { return this.priority; }
    set { this.priority = value; }
    }

    [XmlElement]
    public string ContactMethod
    {
    get { return this.contactMethod; }
    set { this.contactMethod = value; }
    }

    [XmlElement]
    public System.DateTime RequestOpened
    {
    get { return this.requestOpened; }
    set { this.requestOpened = value; }
    }

    [XmlElement]
    public int HREmployeeId
    {
    get { return this.hrEmployeeId; }
    set
    {
    this.hrEmployeeId = value;
    this.HREmployeeIdSpecified = true;
    }
    }

    [XmlIgnore()]
    public bool HREmployeeIdSpecified
    {
    get { return this.hrEmployeeIdSpecified; }
    set { this.hrEmployeeIdSpecified = value; }
    }

    [XmlElement]
    public string AssignTo
    {
    get { return this.assignTo; }
    set { this.assignTo = value; }
    }

    [XmlElement]
    public System.DateTime RequestClosed
    {
    get { return this.requestClosed; }
    set
    {
    this.requestClosed = value;
    this.RequestClosedSpecified = true;
    }
    }

    [XmlIgnore()]
    public bool RequestClosedSpecified
    {
    get { return this.requestClosedSpecified; }
    set { this.requestClosedSpecified = value; }
    }

    [XmlElement]
    public string ResolutionNotes
    {
    get { return this.resolutionNotes; }
    set { this.resolutionNotes = value; }
    }
    #endregion
    }


    دوستان توجه کنند که تگ هایی که برای اینکار استفاده می شود در زیر آورده شده است:

    [XmlElement]
    [XmlElement(ElementName="Album")] تعریف element
    [ return: XmlElement("SubmissionReceipt")] بازگشتی به شکل element

    [XmlAttribute]
    [XmlAttribute(AttributeName="noOfTracks", DataType="unsignedByte")]
    [XmlText]
    ...


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

  10. #10

    Thumbs up

    PDF مطالب گفته شده(دوباره)
    فایل های ضمیمه فایل های ضمیمه

  11. #11

    Lightbulb فراخوانی وب سرویس ها بطور دینامیک Calling Dynamically WebServices

    تا اینجا راههایی که ما برای فراخوانی وب سرویس بررسی کردیم به اینصورت بود که شما حتما باید مشخصات وب سرویس ها رو هنگام تولید کد برنامه داشته باشید تا بتونید Proxy Class رو براشون ایجاد کنید یعنی Add web reference اش کنید و بعدا ازش استفاده کنید.

    اما یک خصوصیت خیلی مهم وب سرویس ها اینه که تعدادشون هر روز زیاد تر میشه و وب سرویس های بهتر و بیشتر بوجود میاد.
    حالا اگر شما بخواهید هر بار که وب سرویس تازه ای میاد داخل کد برنامه تغییرات بدین خیلی کار طاقت فرسایی میشه.

    یک راه حل خوب برای اینکار استفاده از وب سرویس ها بطور دینامیک است.
    یعنی شما هنگام تولید کد proxy class رو ایجاد نمی کنید.بلکه اینکار رو RunTime انجام می دید.

    من یک مقاله در این خصوص پیدا کردم که بسیار عالی هست .
    در این مقاله از خصوصیت namespace Codedom و ... برای پیدا کردن متدها ی وب سرویس ها بطور دینامیک استفاده شده و...

    توصیه می کنم حتما مطالعه کنید.


    http://msdn2.microsoft.com/en-us/lib...35(vs.80).aspx

  12. #12
    آقا خیلی عالی بود

  13. #13
    ممنون از مطالب مفیدی که نوشتین

  14. #14
    با تشکر آقای راد !

    ای کاش یه مثال در مورد تبادل اطلاعات حجیم بین کلاینت و سرور میزدید !

    مثلا فرستادن کل دیتابیس به کلاینت و ویرایش و برگشت اون به وب سرویس !

    با تشکر

  15. #15
    خواهش می کنم:)

    ای کاش یه مثال در مورد تبادل اطلاعات حجیم بین کلاینت و سرور میزدید !

    مثلا فرستادن کل دیتابیس به کلاینت و ویرایش و برگشت اون به وب سرویس !
    چنین کاری چه کاربردی می تونه داشته باشه؟
    بیشتر توضیح میدین چیکار میخوای بکنید؟
    ضمن اینکه از نظر امنیتی توصیه شده کار با دیتابیس توی وب سرویس حداقل بشه(منظور کار روی نتیجه وب سرویس هست نه کارهای داخلی)


    ضمنا خارج از بحث این پست: فکر کنم تا یه مدت دیگه مطالبی در مورد Web Service Security اینجا بذارم. متاسفانه الان وقتش نیست ولی امیدوارم تا یک ماه دیگه وقت بشه.

  16. #16
    فرض کنید ما چند تا نماینده تو شهرهای مختلف داریم , ما یه دیتابیس انبار داریم
    که کلی توش جدول وجود داره !
    حالا ما میخاییم هر روز این نماینده ما دیتابیس براشون لود بشه و بعد هر تغییرات میخان توش بدن(اعم از فروش و خرید ) و بعد شب دیتابیس رو واسه ما بفرستن که اطلاعات چند نمایند به صورت یکپارچه یکجا جمع بشه .


    به نظر شما تو این مورد Remoting جواب میده یا web service ??


    با تشکر

  17. #17
    به نظر شما تو این مورد Remoting جواب میده یا web service ??

    چرا Replication کار نمی کنید؟
    توی چنین مواردی امکانات خود دیتابیس ها مثل همین replication بهتر جواب میده تا امکانات developer ای مثل وب سرویس یا رموتینگ.
    ما توی شرکت خودمون چنین نمونه ای دارم و با همین replication کار می کنیم.

  18. #18
    نقل قول نوشته شده توسط reza_rad مشاهده تاپیک
    چرا Replication کار نمی کنید؟
    با سلام و ممنون به خاطر جوابتون !

    من اصلا با این Replication آشنایی ندارم ؟؟

    یه مقاله ای یا یه نمونه کاری یا یه چیزی که بتونم با این Replication آشنا بشم رو لطف کنید ممنون میشم !

    با تشکر

  19. #19
    من اصلا با این Replication آشنایی ندارم ؟؟

    یه مقاله ای یا یه نمونه کاری یا یه چیزی که بتونم با این Replication آشنا بشم رو لطف کنید ممنون میشم !
    سلام
    خواهش می کنم.

    از جستجوی این سایت استفاده کنید
    کلمه کلیدی : replication
    تالار جستجو: SqlServer

    این مقالات هم خوب هستند:

    http://msdn2.microsoft.com/en-us/library/ms151198.aspx
    http://www.windowsitlibrary.com/Content/77/11/toc.html

    موفق باشید.

  20. #20
    کاربر تازه وارد آواتار RealDream
    تاریخ عضویت
    اردیبهشت 1385
    پست
    81
    خیلی عالیه اما برای من یه سوال هست
    من می تونم نرم افزار تحت ویندوزم رو با این کامپوننت ارتباط بدم یعنی از یه وب سرویس اطلاعتی رو بگیرم تو نرم افزارم آنالیز کنم و دوباره به همین وب سرویس پس بدم . مثلا سیستم های ارزش افزوده اس ام اس

  21. #21
    من می تونم نرم افزار تحت ویندوزم رو با این کامپوننت ارتباط بدم یعنی از یه وب سرویس اطلاعتی رو بگیرم تو نرم افزارم آنالیز کنم و دوباره به همین وب سرویس پس بدم . مثلا سیستم های ارزش افزوده اس ام اس
    البته که میشه
    وب سرویسی که به شما اطلاعات میده کاری به این نداره که شما وب کار می کنی یا ویندوز. شما اگه روی solution های ویندوزی خودتون تست کنید می بینید که امکان add web reference رو بهتون میده.

  22. #22
    نقل قول نوشته شده توسط reza_rad مشاهده تاپیک
    ... تا بتونید Proxy Class رو براشون ایجاد کنید یعنی Add web reference اش کنید و ...
    راه های ایجاد Proxy Class به جز Add web reference چی هست؟ فکر میکنم یکیش استفاده از WSDL.exe باشه.میشه واسم یه توضیح بدید.
    اینجا یه Web Service Proxy Generator هست که جالبه ولی من نمیدونم از کلاسی که از این طریق ساخته میشه چطور میشه استفاده کرد.
    ممنون میشم اگر در این مورد توضیحی واسم بدید چون من یکم با این قضیه مشکل پیدا کردم و ظاهراً راه حلش اینه که برای ایجاد Proxy Class از WSDL.exe استفاده کنم.

  23. #23
    بیشتر توضیح بدید که اینکار رو برای چی می خواهید انجام بدید؟
    توی پست های قبلی(پست شماره 11) فراخوانی داینامیک وب سرویس رو توضیح دادم و یه لینک دادم که دقیقا همین کار رو می کنه یعنی میره و مشخصات وب سرویس رو می خونه با استفاده از reflection و بعد پراکسی کلاس رو ایجاد می کنه....
    ولی پراکسی کلاس توی حالت runtime ایجاد میشه و برای استفاده شما که می خوای محیط دیباگ داشته باشی فکر کنم کاربرد نداره.

    در ضمن اگه وب سرویسی هست که خودت نوشتی پس می تونی روی لوکال دیباگش کنی و بعد بذاریش روی سرور دیگه.

    بیشتر در مورد مشکلت توضیح بده شاید راه بهتری باشه.

  24. #24
    نقل قول نوشته شده توسط reza_rad مشاهده تاپیک
    در ضمن اگه وب سرویسی هست که خودت نوشتی پس می تونی روی لوکال دیباگش کنی و بعد بذاریش روی سرور دیگه.
    ممنون از توجهتون.
    قضیه این طوری که من برنامه ای نوشتم برای Pocket Pc.و نمیتونم وب سرویسم رو روی Win Ce بگذارم .روی Desktop pc گذاشتم و موقع Add refrence ،آی پی سیستمم رو میدم توی برنامه واسه همینه که لوکال اجرا نمیتونم اجراش کنم.
    این Error رو میگیره:Could not establish connection to network.

  25. #25
    خواهش می کنم:)
    این Error رو میگیره:Could not establish connection to network.
    از ارور شما بیشتر اینطور به نظر میرسه که مشکل از ارتباطات شبکه ای باشه. فایروال روی سیستمتون غیرفعال هست؟
    حالا من با pocket pc کار نکردم ولی باید راهی باشه برای اینکه چک کنید و ببینید که اصلا می تونه کامپیوتر شما رو توی شبکه ببینه یا نه؟

  26. #26
    نقل قول نوشته شده توسط reza_rad مشاهده تاپیک
    حالا من با pocket pc کار نکردم ولی باید راهی باشه برای اینکه چک کنید و ببینید که اصلا می تونه کامپیوتر شما رو توی شبکه ببینه یا نه؟
    مشکلی از لحاظ شبکه نداره.
    (به هر حال ممنون.مقاله هاتون واسه من که خیلی پربار بودن)

  27. #27
    مشکلی از لحاظ شبکه نداره.
    (به هر حال ممنون.مقاله هاتون واسه من که خیلی پربار بودن)
    خواهش می کنم.
    متاسفم که توی این مورد خاص نمی تونم کمکی کنم.
    به هر حال موفق باشید.

  28. #28
    ممنون از مقاله خوبتون من یه مشکلی که دارم شناسایی کاربرایی که به web service وصل می شن دارم می شه یه کمکی کنید

  29. #29
    خودم پس از یک روز بالا پایین رفتن از این دهکده نچندان کوچک پیدا کردم شما اگه نخواید که هرکسی به web service شما دسترسی داشته باشه باید از Windows authentication استفاده کنید از Forms authentication, نمیشه استفاده کرد واینم یه مثال ساده:

    Dim S As WebReference.Service = New WebReference.Service()
    S.Credentials = New NetworkCredential("administrator", "mhn")
    Dim mhn As String = S.max_id()

  30. #30
    فرق وب سرویس با یه چیزی مثل اکستنشن در پی اچ پی چیه؟ یا مزیتش نسبت به اینکلود و اینها...
    بنظرم مفهومشون خیلی نزدیک بهم هست. شاید یه حالت ساده و بهینه و خودکار شده تری هست؟
    ببخشید مثالهاتون هم با دات نت بود ظاهرا، بنده زیاد حوصله نکردم بخونم.

  31. #31
    فرق وب سرویس با یه چیزی مثل اکستنشن در پی اچ پی چیه؟ یا مزیتش نسبت به اینکلود و اینها...
    بنظرم مفهومشون خیلی نزدیک بهم هست. شاید یه حالت ساده و بهینه و خودکار شده تری هست؟
    ببخشید مثالهاتون هم با دات نت بود ظاهرا، بنده زیاد حوصله نکردم بخونم.
    شاید به بیان ساده بشه اینطوری گفت:
    هر دو اینها به شما سرویس هایی می دهند پس از این نظر با هم مشابه اند.
    اما در مورد وب سرویس مزیت مهمی که وجود داره Cross Platform بودنشه که شما رو بی نیاز از Platform میکنه و سرویس هاش توی هر محیطی در دسترس خواهد بود. این چیزیه که extension ها php به شما نمیده .

  32. #32

    مشکل در ارسال اطلاعات به وب سرویس

    سلام
    من یک مشکل در ارتباط با ارسال اطلاعات به وب سرویس دارم
    من برای ارسال اطلاعات یک بانک اطلاعاتی که بر روی یک برنامه تحت ویندوز ساخته میشه به یک نرم افزار تحت وب (بانک اطلاعات بر روی سرور) از یک وب سرویس استفاده کردم.

    وب سرویس من درست کار می کنه ، چون که ارسال و دریافت اطلاعات انجام میشه (چون به صورت لوکال تست کردم و در دیباگ مود ، اطلاعات قابل مشاهده بودند ولی در همان دیبگ مود هم در بانک سرور ثبت نمی شد) ولی یک مشکل داره و هنگام ثبت اطلاعات ارسالی بر روی بانک سرور این خطا رو میده :
    The String or Binary data would be truncated
    من برای اینکه از درست بودن کدم اطمینان پیدا کنم ، اومدم و وب سرویس رو موقتا حذف کردم و توابع Insert اون را داخل پروژه ویندوزی کپی کردم و پروژه کار کرد .

    لازمه بگم که مشکل من از اونجا شروع میشه که من یک DataSet رو میخوام با حجم زیادی data ارسال کنم . و اونطوری که خواندم این توانایی برای اولین باریه که توسط Net2. ارائه میشه ، اگه ممکنه من را راهنمائی کنید .

  33. #33
    آیا دیتاست به وب سرویس ارسال میشه درست؟
    آیا کد وب سرویس رو trace کردید؟

    در کل ارور شما به این دلیله:

    This error message appears when you try to insert a string with more characters than the column can maximal accommodate.

    http://www.sql-server-performance.co...ncated_p1.aspx

    اما بهتره به نظر trace کنید و مشکل رو دقیقا پیدا کنید.

  34. #34
    با تشکر از شما
    من هم داخل اینترنت جستجو کردم و به همین جواب رسیدم ولی فکر کنم شما متن سوال قبلی من را کامل نخواندید .
    من برای اینکه از درست بودن کدم اطمینان پیدا کنم ، اومدم و وب سرویس رو موقتا حذف کردم و توابع Insert داخل اون را در داخل پروژه ویندوزی کپی کردم و پروژه کار کرد (Insert انجام شد) .
    ضمنا من خط به خط WebService را trace کردم و دقیقا تمام فیلدهای جدول را چک کردم .
    لازمه که بگم هیچ کدام از آنها مشکل نداشت و این خطا دقیقا زمانی که دستور Insert اجرا می شود ، بروز می کند .

  35. #35
    چرا من متن سوال شما رو خوندم
    گفتم Trace کنید تا دقیقا همون اسکریپت insert ای که توی وب سرویستون ایجاد میشه رو بردارید ببرید و توی SQLServer تست کنید مثلا تویquery analyzer ببینید آیا مشکلی نداره؟

  36. #36
    نقل قول نوشته شده توسط reza_rad مشاهده تاپیک
    یک وب سرویس به معنای ساده نوعی کامپوننت تحت وب است.
    این کامپوننت به application هایی که از آن استفاده می کنند این امکان را می دهد که بتوانند از متدهای این وب سرویس استفاده کنند.
    بهتر است وب سرویس را با یک مثال توضیح دهیم.
    فرض کنید شما می خواهید در web application خود وضعیت آب و هوای مناطق جغرافییای مختلف را داشته باشید. برای پیاده سازی چنین کاری شما دو راه دارید:
    1- خودتان وضعیت اب و هوا را از سایت های مختلف جمع آوری کنید و آنها را در web application خود استفاده کنید.
    2- از یک وب سرویس که آب و هوای مناطق جغرافیایی مختلف را می دهد استفاده کنید.

    در واقع این وب سرویس آب و هوا به تنهایی کاری نمی کند. بلکه توابعی دارد که توسط web application های مختلف صدا زده می شوند. که بعنوان مثال در اینجا وب سرویس وضعیت آب و هوا را برمی گرداند.
    البته وب سرویس ها استفاده های بسیار پرکاربردتر و مهمتری دارند مثل کار با دیتابیس و ... که در اینجا فقط یک مثال برای روشن شدن موضوع ذکر شد.

    اما مزیت اصلی استفاده از وب سرویسها:
    عدم نیاز به کدنویسی مجدد.

    شاید بسیاری از دوستانی که OOP کار کارده اند بگویند که اینکار با کلاس هم امکانپذیر است. بله امکانپذیر است اما:
    1- در برنامه نویسی با کلاس شما باید کلاستان را در هر پروژه add کنید ولی در وب سرویس فقط کافیست از متدها استفاده کنید.
    2- در کار با کلاسها شما ممکن است در application های مختلف به روشهای مختلف با کلاسهای متفاوت کار کنید. یعنی به عبارتی کار شما هر بار متفاوت است و این خوانایی را پایین می آورد و همچنین توسعه را مشکل می سازد. اما در استفاده از وب سرویس شما هربار فقط با یک وب سرویس خاص کار می کنید و طبق همان متدهای خاص وب سرویس کار می کنید حالا در هر کجا و هر application که باشید.
    3- وقتی با سرویس کار می کنید یک سری استانداردهایی در استفاده وجود دارد که تمام application ها باید از آن تبعیت کنند و بنابراین reusability بالا می رود.
    4- و ....


    و اما بعضی واژگان در ارتباط با Web Service :
    XML:
    Extensible Markup Language

    یک زبان markup است که یک فرمتی را برای توصیف داده ها فراهم می کنید. شبیه html است شامل تگ ها و ...

    SOAP :
    Simple Object Access Protocol

    در واقع پروتکل ارتباطی است برای وب سرویس مثل http برای وب و ...

    WSDL:
    Web Service Description Language

    یک xml document برای web service است که متدها و بعضی خصوصیات دیگر وب سرویس را توضیح می دهد.


    در قسمت بعد طرز ایجاد یک وب سرویس توضیح داده خواهد شد.
    در مورد uddi هم می شه بگین چطوری استفاده می شه و چطوری می تونیم webservice هامون را توسطش registeryکنیم

  37. #37
    کاربر تازه وارد
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    تهران - شمیرانات
    پست
    78
    من می خوام حدود 5000 رکورد رو از یک table که شامل 12 فیلد است از طریق webservice به یک نرم افزار تحت ویندوز انتقال بدم آیا استفاده از وب سرویس بهترین گزینه است ؟
    سرعت انتقالش خوبه یا اینکه اگر این اطلاعات رو به صورت فایل Text در بیارم و بعد download بشه و سپس در بانک insert بشه بهتره ؟ کدوم روش رو توصیه می کنید ؟

  38. #38

    service

    پروژه كارشناسي من در مورد وب سرويس ميباشد. لطفا منابع لازم را براي يادگيري آن را لطف كنيد.

  39. #39

    نقل قول: وب سرویس Web service از آغاز تا پایان...

    سلام
    پروژ کارشناسی من در مورد SOA است و به مطالبی در مورد ws_security نیاز دارم
    اگر ممکنه در این مورد توضیح بدین و منابعی رو معرفی کنید
    ممنون

  40. #40

    نقل قول: وب سرویس Web service از آغاز تا پایان...

    چطور میشه صفحه تست رو از وب سرویس غیرفعال کرد ؟
    و چطور میشه

    The following operations are supported. For a formal definition, please review the Service Description.

    رو حذف یا غیرفعال کرد ؟

صفحه 1 از 2 12 آخرآخر

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

  1. web service ذر مو بایل
    نوشته شده توسط sevigol در بخش Java ME : نگارش میکرو جاوا
    پاسخ: 0
    آخرین پست: پنج شنبه 11 بهمن 1386, 21:17 عصر
  2. یه مشکل در مورد Service
    نوشته شده توسط iman_s52 در بخش C#‎‎
    پاسخ: 5
    آخرین پست: شنبه 30 تیر 1386, 20:32 عصر
  3. چطوری میتونم برنامه رو به صورت یک Service در بیارم
    نوشته شده توسط mpmsoft در بخش برنامه نویسی در 6 VB
    پاسخ: 10
    آخرین پست: پنج شنبه 27 اردیبهشت 1386, 18:59 عصر
  4. کاربرد xml در web service
    نوشته شده توسط nargesi در بخش XML و کاربرد آن
    پاسخ: 2
    آخرین پست: سه شنبه 12 اردیبهشت 1385, 16:09 عصر
  5. استفده از Web Service
    نوشته شده توسط ealireza در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: سه شنبه 18 مرداد 1384, 06:22 صبح

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

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