ورود

View Full Version : سوال: wsdl.exe



niloofar norouzi
چهارشنبه 15 آبان 1387, 20:25 عصر
با سلام
wsdl.exe چیست و چگونه می شود از آن برای استفاده از وب سرویسها ، بهره گرفت؟

از پسوند این فایل اینگونه به نظر می رسه که باید یک فایل اجرایی باشد. این فایل کجاست و چگونه می شود از ان استفاده کرد؟
ممنون

niloofar norouzi
یک شنبه 19 آبان 1387, 10:15 صبح
با سلام

1-به زبانی ساده ،پروکسی چیست؟
2-چگونه از کلاس پروکسی که با ابزار wsdl.exe ساخته می شود برای سرور و کلاینت استفاده می شود؟

من با استفاده از ابزار wsdl.exe توانستم کلاس پروکسی را ایجاد کنم.
با افزودن این کلاس به وب سرویس خود ، توانستم متد آن را به کار گیرم.

ولی :
1-آیا کلاس پروکسی برای استفاده مستقیم برای مشتری وجود دارد؟
2-آیا می شود این کلاس را در سمت کلاینت در پوشه ای خاص گذاشت و از کلاس آن استفاده کرد ، بدون آنکه از Add Web References استفاده شود؟


3-نقش فایل dll شده کلاس پروکسی برای انجام این عمل چیست؟

ممنون

vcldeveloper
یک شنبه 19 آبان 1387, 16:26 عصر
این رو باید در بخش دات نت بپرسید.
بطور خلاصه، اون ابزار wsdl.exe آدرس WSDL یک WebService را از شما می گیرید، و بر اساس آن یک کلاس دات نت برای استفاده از اون WebService ایجاد می کند که به آن کلاس پروکسی WebService مربوطه گفته میشه. شما در برنامه خودتان با آن کلاس ساخته شده مثل هر کلاس دیگه ایی کار می کنید، و اون کلاس وظیفه تبدیل درخواست های شما به فرمت مورد قبول WebService مربوطه، و تبدیل پاسخ های آن به فرمت مورد انتظار شما را برعهده میگیره.

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

محمدامین شریفی
یک شنبه 26 آبان 1387, 13:42 عصر
این قسمتی دیگر از PDF در حال تولید میباشد:



فصل دوم: ممقدمه ای بر توسعه وب با asp.net



تا اینجا چگونگی ساخت صفحات asp.net را آموزش میدهد.
حالا چگونگی ایجاد کردن یک "add reference"را شرح میدهد:
الف) باید به دنبال url ای شبیه به این(http://www.swanandmokashi.com/HomePage/WebServices/StockQuotes.asmx?WSDL)بگردیم (http://www.swanandmokashi.com/HomePage/WebServices/StockQuotes.asmx?WSDL%29%D8%A8%DA%AF%D8%B1%D8%AF%D B%8C%D9%85).
ب)سپس در با کلیک کردن بر روی"Add Web Reference" و نوشتن عبارت بالا به آن سرویس وب دسترسی پیدا کنیم.
ج)در قسمت "browser" صفحه لیستی از متد های "web service"می آید،که در این نمونه این وب سرویس دارای متد
"GetStockQuotes(quoteTiker as string)"میباشد.
د) نام دلخواه خودمان را در جعبه متن زیرین عبارت "what reference name" مینویسیم که در اینجا متن "QS" را وارد میکنیم،سپس کلید" add web reference " را فشار میدهیم.

حالا میتوانیم از وب سرویسمان استفاده کنیم

الف)صفحه ای مانند کد زیر را ایجاد میکنیم:




<%@ Page Language="C#" AutoEventWireup="true"

CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html

PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

<title>Untitled Page</title>

</head>

<body>

<form id="form1" runat="server">

<div>

<asp:TextBox ID="txtTicker" runat="server"></asp:TextBox>

<asp:Button ID="btnGet" runat="server" Text="Get" />

<asp:Label ID="lblQuote" runat="server"></asp:Label></div>

</form>


</body>


</html>

محمدامین شریفی
یک شنبه 26 آبان 1387, 13:48 عصر
ب) و در رویداد btnGet_Click باید این قطعه کد را بنویسید:



protected void btnGet_Click(object sender, EventArgs e)

{

QS.StockQuotes myQuote = new QS.StockQuotes();

QS.Quote[] res;

res = myQuote.GetStockQuotes(txtTicker.Text);


lblQuote.Text = res[0].StockQuote;


}


د)شما میتوانید عبارت هایی مانند: MSFT, RTRSY, BEAS را درون جعبه متن وارد کنید.
در اینجا شما با استفاده از پروکسی ایجاد شده میتوانید همچون یک کلاس معمولی از شئیتان استفاده کنید:
http://i35.tinypic.com/2a62rmp.gif