# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > WCF , Web Services , .Net Remoting > آموزش: راه اندازی یک وب سرویس و استفاده از آن در برنامه های تحت وب  و  برنامه های تحت ویندوز

## alonemm

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

این که در بالا گفتم یک الگریتم کامل از کار بود که باشروع اون وارد ریز موضوعات هم میشیم.

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



(فقط از پست های اضافی پرهیز کنید که تاپیک تمیز بمونه.)


موفق باشید.

----------


## ایمان مدائنی

در اين وب سرويس قراره چه كار هايي انجام بشه ؟

----------


## alonemm

با سلام:
بيشتر نحوه كار با سرويس ها رو در برنامه هاي تحت و  ويندوز و بكار گيري اين سرويس ها مطرح ميكنم.
و در مورد سرويسهاش ميشه با درخواست دوستان روش كار كرد.


موفق باشيد.

----------


## alonemm

باسلام:
خب امروز شروع میکنیم به ساخت این پروژه:

1- ویژوال استادیو رو باز کنید و قسمت New web site... رو از منوی فایل انتخاب کنید و از کادر باز شده قسمت WebService رو انتخاب کنید.(یک نام برای سرویس خود انتخاب کنید)
1.jpg

2- حالا در پوشه App_code یک فایل کد نویسی با همان نامی که برای سرویس خود انتخاب کردید ایجاد شده.
3- به سراغ صفحه میریم و بازش میکنیم همون طور که میبیند همانند یک فایل کلاس هست که دارای یک متد پیش فرض هم هست:

 publicstring HelloWorld() {
return"Hello World";


}

4- حالا ما هم یک متد دیگه به این فایل اضافه میکنیم ( فقط برای مثال)

[WebMethod]
publicbool login(string user, long pass)
{
if (user == "user1" && pass == 123)
{
return true;
}
else
{
return false;
}
}

 

- این متد که برای مثال پیاده شده دارای 2 پارامتر ورودی هست و یک مقدار رو که از نوع بولین هست رو برمیگردونه.

----------


## alonemm

خب حالا یک متد هم برای کار با پایگاه داده اضافه میکنیم ( باز هم میگم فقط برای مثال)

[WebMethod]
publicint descidcity()
{
SqlConnection conObj = newSqlConnection();
conObj.ConnectionString = ConfigurationManager.ConnectionStrings["DBConnectionString"].ConnectionString.ToString();
conObj.Open();
string commandText55 = "select code from tbluser ORDER BY code DESC ";
SqlCommand cmdObj55 = newSqlCommand(commandText55, conObj);
SqlDataReader ddr = cmdObj55.ExecuteReader();
ddr.Read();
int code22;
if (ddr.HasRows == true)
{
code22 = int.Parse(ddr["id"].ToString());
code22 += 1;
conObj.Close();
return code22;
}
else
conObj.Close();
return 0;
}

 

که این متد یک سری عملیات رو از پایگاه داده میگیره و برای ما بر میگردونه از نوع عددی.

----------


## alonemm

حالا شما میتونید پروژه وب سرویس رو که با متدهای کاری خودتون  ساختید رو بروی یک هاست اینترنتی آپلود کنید.
برای این کار شما اول پروژه رو پابلیش کنید و بعد فایلهای ساخته شده رو به سرور منتقل کنید.

4.jpg

----------


## alonemm

خب با کامل شدن پروژه سرویس شما و راه اندازی اون روی یک سرور اینترنتی حالا:
یک پروژه وب سایت تعریف میکنیم و نحوه اتصال به پروژه وب سرویس و استفاده از متدهای اونو فرا میگیریم.
2.jpg
پس ایجاد یک پروژه وب سایت شروع به اتصال به وب سرویس مکنیم.

----------


## alonemm

بروی وب سایت خود در پنل Solution کلیک راست کنید و گزینه Add Web Refernce رو انتخاب کنید.
3.jpg

تا کادر مربوطه باز شود.
در قسمت URL نام سایتی که پروژه وب خودتون رو روش آپلود کردید وارد کند و سپس نام فایل سرویس مورد نظر رو:
5.jpg

اگه خطایی درقسمت فایل های شما در سرور وجود نداشته باشه شما نام متدهای داخل سرویستون رو میتونید در این پنجره ببنید.
حالا برای اضافه کردن این سرویس میتونید از قسمت ٌWeb Refernce Name یک نام انتخاب کنید ( این نام رو میتونید با نقطه از هم جدا کنید که هر کدوم میتونه یک فضای نام برای دستیابی به سرویس موردنظر باشه و در پوشه مربوطه اضافه میشه.) و بروی دکمه Add Refrence کلیک کنید.

----------


## alonemm

پس از مراحل بالا باید پنل Solution شما شبه به عکس زیر شده باشه:

6.jpg
شروع به بکارگیری یکی از متدهای سرویس مکنیم:
یک کنترل لیبل به صفحه اضافه میکنیم و حالا میخوایم متد HelloWorld رو فراخوانی کنیم و پاسخ این متد رو داخل متن شی لیبل نمایش بدیم.
وارد صفحه کد نویسی فرم وب مربوطه میشیم.
و فضای نام مربوطه رو اضافه میکنیم (بسته به نام انتخابی شما در مراحل قبل)

using com.moshtare.www;


حالا یک شی از کلاس سرویس مورد نظر میسازیم:

MajidWebService obj = new MajidWebService(); 

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


Label1.Text = obj.HelloWorld();

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

----------


## alonemm

با سلام:
امروز در ادامه این آموزش نوحه بکار گیری این سرویس رو در برنامه های تحت ویندوز هم دنبال میکنیم.
یک پروژه تحت ویندوز ایجاد میکنیم:
7.jpg

پس از ایجاد پروژه بروی پنل Solution کلیک راست کنید و گزینه Add Servic Refernce رو انتخاب کنید تا کادر مربوطه باز بشه.

8.jpg

از کادری که باز میشه گزینه Add web Refrence رو انتخاب کنید :

9.jpg

----------


## alonemm

پس از انجام مراحل بالا:
از این قسمت همانند مراحل قبل در آموزش عمل میکنیم ( با این پنجره در مراحل قبل آشنا شدیدم)

10.jpg

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

----------


## alonemm

مثال :
برای تست یک شی لیبل به فرم اضافه میکنیم و یک متد رو از سرویس فراخوانی می کنیم و در متن لیبل نمایش میدیم:(در رویداد کلیک یک دکمه)

privatevoid button1_Click(object sender, EventArgs e)
{
tt.MajidWebService obj = new tt.MajidWebService();
 
label1.Text = obj.descidcity().ToString();
}



حلا پروژه رو ران کنید و ازش لذت ببرید........!

----------


## alonemm

خب این آموزش به پایان رسید.
امیدوارم از این آموزش نهایت استفاده رو ببرید.

در پایان من این سرویس رو که در این آموزش ساختیم رو روی هاستم آپلود کردم و اگه دوستان نیاز دارن میتونند برای تست از این سرویس در برنامه هاشون استفاده کنند:
آدرس : http://www.moshtare.com/MajidWebService.asmx

موفق باشید.

----------


## vahid.bz

سلام
دوست عزيز خيلي ازت ممنونم 
ولي من همون اولش كه از قسمت location گزينه ي http  رو انتخاب مي كنم دكمه ي ok  غير فعال مي شه
شما ميدوني چرا و من بايد چي كار بكنم؟

----------


## alonemm

> سلام
> دوست عزيز خيلي ازت ممنونم 
> ولي من همون اولش كه از قسمت location گزينه ي http  رو انتخاب مي كنم دكمه ي ok  غير فعال مي شه
> شما ميدوني چرا و من بايد چي كار بكنم؟


آدرس رو در قسمت URL صحيح وارد كنيد.

----------


## narcis_86

سلام
مطالب خیلی خوب بود نمیشه برای ساخت یک وب سرویس ساده با wcf یک مثال ساده ا توضیح بدید.
با تشکر

----------


## haj agha

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

----------


## raha_20

مشکلات احتمالی که ممکنه توی Publish کردن وب سرویس پیش بیان چی می تونه باشه ..
من شنیدم مشکلاتی که پیش میاد خیلی ناجور هست ؟
ایا به این بستگی به این داره که هاست رو از کجا گرفته باشی ؟
 من کجا میتونم وب سرویسم رو Publish کنم ..
 یه چند تا Host اونمم Free معرفی کنید

----------


## alonemm

> سلام
> مطالب خیلی خوب بود نمیشه برای ساخت یک وب سرویس ساده با wcf یک مثال ساده ا توضیح بدید.
> با تشکر


در قالب یک آموزش حتما.

----------


## alonemm

> سلام...متشکر از آموزشتون... میشه نحوه ارتباط وب سرویس را با پایگاه داده هم بیان کنید؟؟؟ به صورت عملی مصل همین آموزش... مثلاً در اس کیو ال یک جدول ساختیم شامل نام و فامیل و شماره حالا میخواهیم از طریق وب سرویس و برنامه سی شارپ با اینها کار کنیمووومتشکر


بله در نظر دارم. 
(در قالب یک راهنمایی باید داده ها رو به صورت XML فرستاد)
موفق باشید.

----------


## alonemm

> مشکلات احتمالی که ممکنه توی Publish کردن وب سرویس پیش بیان چی می تونه باشه ..
> من شنیدم مشکلاتی که پیش میاد خیلی ناجور هست ؟
> ایا به این بستگی به این داره که هاست رو از کجا گرفته باشی ؟
> من کجا میتونم وب سرویسم رو Publish کنم ..
> یه چند تا Host اونمم Free معرفی کنید


باسلام:
درمورد سوال شما :
1- اگه پروژه شما دچار باگ نباشه به صورت کامل پابلیش میشه مشکلات در صورتی به وجود میاد که در قسمتی کامپایلر به مشکل بر بخوره.
2-برای پابلیش وب سرویس همانند وب سایت عمل کنید.
3-آدرس هاست های رایگان داخل تالار ASP.net هست جستجو کنید.

مفق باشید.

----------


## علیرضا حسن زاده

با تشکر از آموزش های خوبتون ممکنه در مورد اعتبارسنجی کاربر در وب سرویس هم آموزش بدین؟
الان هرکسی می تونه از وب سرویسی که شما قرار دادین استفاده کنه، روش های محدود سازی چطوریه؟

----------


## Hamid Reza Rahimi

دوست عزيز alonemm سلام
من ميخوام يك برنامه ويندوزي ارسال اس ام اس بنويسم و از يك سرويس بابت اينكار استفاده كنم حالا نميدونم از windows service استفاده كنم و يا از web service و اگر از ويندوز سرويس استفاده كنم آيا ميتونم يك فانكشن را از داخل آن فراخواني كنم ؟
اگر جواب مثبته چطور ؟
اگر منفي هست ؟ آيا در برنامه هاي ويندوزي ميشه از وب سرويس استفاده كرد طوري كه اين سرويس روي ويندوز نصب بشه نه هاست ؟

----------


## alonemm

> با تشکر از آموزش های خوبتون ممکنه در مورد اعتبارسنجی کاربر در وب سرویس هم آموزش بدین؟
> الان هرکسی می تونه از وب سرویسی که شما قرار دادین استفاده کنه، روش های محدود سازی چطوریه؟


باسلام:
برای اعتبار سنجی شما میتونید در وب سرویستون یک جدول برای کاربران داشته باشید.
بعد در سازنده کلاس اصلی و یا در یک متود نام کاربری و رمز عبور رو به عنوان پارامتر دریافت کنید و سپس بعد از عملیات چک اگر مجاز بود اطلاعات رو بفرستید و در غیر این صورت Null بفرستید.

موفق باشید.

----------


## alonemm

> دوست عزيز alonemm سلام
> من ميخوام يك برنامه ويندوزي ارسال اس ام اس بنويسم و از يك سرويس بابت اينكار استفاده كنم حالا نميدونم از windows service استفاده كنم و يا از web service و اگر از ويندوز سرويس استفاده كنم آيا ميتونم يك فانكشن را از داخل آن فراخواني كنم ؟
> اگر جواب مثبته چطور ؟
> اگر منفي هست ؟ آيا در برنامه هاي ويندوزي ميشه از وب سرويس استفاده كرد طوري كه اين سرويس روي ويندوز نصب بشه نه هاست ؟


باسلام:
در برنامه های ویندوز سرویس هم میشه همین پروسه رو پیاده کرد و برای ارتباط به همین روش آموزشی که دادم هست و فقط باید IP سرور مربوطه رو به برنامه ویندوز سرویس و پوشه مربطه رو بهش بدید در قسمت اضافه کردن رفرنس.

موفق باشید.

----------


## Hamid Reza Rahimi

دوست عزيز در اينصورت بايد اون پوشه share  شده باشه ؟

----------


## علیرضا حسن زاده

> دوست عزيز در اينصورت بايد اون پوشه share شده باشه


معمولا شما با پوشه کار نمی کنی در برنامه های تحت وب آدرسی رو که صفحه در اون قرار داره یا در این مورد آدرس جایی رو که WebServise در اون قرار داره رو به برنامه می دین (رفرنسش رو اضافه می کنید)

----------


## Hamid Reza Rahimi

عليرضا جان سلام 
من منظورم در استفاده از windows service هست نه web service
بازم تشكر از جوابت

----------


## alonemm

> دوست عزيز در اينصورت بايد اون پوشه share  شده باشه ؟


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

----------


## behrooz123

*ايجاد*  * وب سرويس با استفاده از * * رويه‌هاي ذخيره شده

*قابليت جالبي از SQL Server 2005 به بعد به اين محصول اضافه شده است كه امكان ايجاد يك وب سرويس بومي را بر اساس رويه‌هاي ذخيره شده و يا توابع تعريف شده در ديتابيس‌هاي موجود، فراهم مي‌سازد. اين قابليت نيازي به IIS يا هر هاست ديگري براي اجرا ندارد و توسط خود اس كيوال سرور راه اندازي و مديريت مي‌شود.
در اينجا يك مثال عملي از آن را با هم مرور خواهيم كرد:

الف) ايجاد يك جدول آزمايشي به همراه تعدادي ركورد دلخواه در آن

     
CREATE TABLE [tblWSTest](   [id] [int] IDENTITY(1,1) NOT NULL,   [f1] [nvarchar](50) NULL,   [f2] [nvarchar](500) NULL,  
  CONSTRAINT [PK_tblWSTest] PRIMARY KEY CLUSTERED    
(   [id] ASC  )WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]  
  ) ON [PRIMARY]

 
SET IDENTITY_INSERT [tblWSTest] ON  INSERT [tblWSTest] ([id], [f1], [f2]) VALUES (1, N'a1', N'a2')  INSERT [tblWSTest] ([id], [f1], [f2]) VALUES (2, N'b1', N'b2')  INSERT [tblWSTest] ([id], [f1], [f2]) VALUES (3, N'c1', N'c2')  INSERT [tblWSTest] ([id], [f1], [f2]) VALUES (4, N'd1', N'd2')  INSERT [tblWSTest] ([id], [f1], [f2]) VALUES (5, N'e1', N'e2')  SET IDENTITY_INSERT [dbo].[tblWSTest] OFF



ب) ايجاد يك رويه ذخيره شده در ديتابيس جاري



 
CREATE PROCEDURE GetAllData  AS   SELECT f1,          f2   FROM   tblWSTest  
  
ج) ايجاد يك HTTP Endpoint

  
CREATE ENDPOINT GetDataService     STATE = STARTED  AS HTTP(            PATH = '/GetData',            AUTHENTICATION = (INTEGRATED),            PORTS = (CLEAR),            CLEAR_PORT = 8080,            SITE = '*'        )  FOR SOAP(             WEBMETHOD 'GetAllData'             (NAME = 'testdb2009.dbo.GetAllData'),             WSDL = DEFAULT,             DATABASE = 'testdb2009',             NAMESPACE = DEFAULT         )  
    


1.    توضيحات:
Ports در حالت clear و يا ssl مي‌تواند باشد. همچنين براي اينكه با IIS موجود بر روي سيستم هم تداخل نكند CLEAR_PORT به 8080 تنظيم شده است. ساير پارامترهاي آن بسيار واضح هستند. براي مثال تعيين ديتابيسي كه اين رويه ذخيره شده در آن قرار دارد و همچنين مسير كامل دسترسي به آن دقيقا مشخص مي‌گردند.
 

 1.      اين وب سرويس هم اكنون آغاز به كار كرده است. براي مشاهده wsdl آن، آدرس زير را در مرورگر وب خود وارد نمائيد (PATH) و CLEAR_PORT معرفي شده در endPoint اينجا بكار مي‌رود:
2.      http://localhost:8080/GetData?wsdl

----------


## behrooz123

د) استفاده از اين وب سرويس در يك برنامه ويندوزي


 يك برنامه ساده winForms  را شروع كنيد. سپس يك DataGridView را بر روي فرم قرار دهيد (بديهي است  اين مورد مي‌تواند يك برنامه ASP.Net هم باشد و موارد مشابه ديگر). سپس از  منوي پروژه، يك service reference را در VS2008 بر اساس آدرس wdsl فوق  اضافه كنيد (شكل زير): 



*1.    * 
براي اينكه اين مثال در VS2008 درست كار كند بايد فايل app.config ايجاد شده را كمي ويرايش كرد. قسمت security آن را يافته و تغييرات زير را با توجه به AUTHENTICATION مورد نياز تغيير دهيد:
  
<security mode="TransportCredentialOnly">    <transport clientCredentialType="Windows" proxyCredentialType="None"        realm="" />    <message clientCredentialType="UserName" algorithmSuite="Default" />  </security>  
  
  
using System;  using System.Data;  using System.Windows.Forms;  namespace WebServiceTest  {     public partial class Form1 : Form     {         public Form1()         {             InitializeComponent();         }         private void Form1_Load(object sender, EventArgs e)         {             ServiceReference1.GetDataServiceSoapClient data =                 new ServiceReference1.GetDataServiceSoapClient();             dataGridView1.DataSource = (data.GetAllData()[0] as DataSet).Tables[0];         }     }  }  
  



منبع : http://www.dotnettips.info/2009/10/blog-post.html

----------


## mehrnaz_dotnet

سلام من با ورژن 2010 کار میکنم و دارم از یک win application یه سری داده که شماره موبایل هستند را به وب سرویسی که امکان ارسال اس ام اس را در اختیارم گذاشته انتقال میدم....در واقع وب سرویس قبلا ایجاد شده است.
من چگونه از این امکان استفاده کنم؟
مطلبتون رو کامل خوندم...راستش اون جاییش که به کار من میومد بسیار سریع ازش عبور شده بود...:(
شاید چیز پیش پا افتاده ای باشه...
من وقتی add service refrence را میزنم یه پنجره باز میشه که ازم آدرس --سرویس ---عملیات----و namespace رو میپرسه....؟خب حالا چی کار باید بکنم؟

----------


## omid_delphi2

سلام دوست عزیز
با تشکر از مقاله خوب و مفیدی که ارائه کردید
من مطابق دستورات شما وب سرویس را ساختم از طریق سرویس داخل خود ویژوال استادیو اجرا میشود ولی وقتی میخواهم ان را از طریق iis اجرا کنم اجرا نمی شود
همچنین در خصوص نحوه اپلود و قرار دادن وب سرویس بر روی هاست اینترنتی بیشتر و کاملتر توضیح دهید من یک فولدربا نام test در wwwroot ساختم و فایلهای ایجاد شده توسط publisher را در انجا کپی کردم سپس از طریق ادرس www.hostname/test/webservisename.asmx قصد دسترسی داشتم که امکانپذیر نبود
لطفا راهنمایی فرمائید
ممنون

----------


## m_gholami

با سلام

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

- من چطوری باید یکسری اطلاعات رو از برنامه (a (awin app بگیرم و نتایجش رو در برنامه ( b (web app نمایش بدهم

----------


## hastiam

> - من چطوری باید یکسری اطلاعات رو از برنامه (a (awin app بگیرم و نتایجش رو در برنامه ( b (web app نمایش بدهم


 این دقیقا سوال من هم هست!

----------


## mahtab64

سلام 

میشه ایجاد یک وب سرویس بدون اینکه توی هاست قرار بدم کنم ( localhost webservice) رو توضیح بدید و اینکه چطور توی یک lable توی یک وب سایت نمایش بدم ؟ 

ممنون

----------


## asemaneiran

> سلام 
> 
> میشه ایجاد یک وب سرویس بدون اینکه توی هاست قرار بدم کنم ( localhost webservice) رو توضیح بدید و اینکه چطور توی یک lable توی یک وب سایت نمایش بدم ؟ 
> 
> ممنون


سلام
دقیقا
اگه ممکنه لطف کنید و این مورد رو هم اموزش بدید
ممنونم

----------


## sds1920

> با سلام
> 
> - ایا وب سرویس این قابلیت رو داره که اطلاعات رو از برنامه یک گرفته و به برنامه دومی ارسال کرده و برنامه دوم نتایج رو نمایش بدهد؟
> 
> - من چطوری باید یکسری اطلاعات رو از برنامه (a (awin app بگیرم و نتایجش رو در برنامه ( b (web app نمایش بدهم


منم همين مشکل رو دارم.اگه لطف کنيد اين مشکل رو حل کنيد خيلي خوب مي شه.

----------


## alonemm

> سلام من با ورژن 2010 کار میکنم و دارم از یک win application یه سری داده که شماره موبایل هستند را به وب سرویسی که امکان ارسال اس ام اس را در اختیارم گذاشته انتقال میدم....در واقع وب سرویس قبلا ایجاد شده است.
> من چگونه از این امکان استفاده کنم؟
> مطلبتون رو کامل خوندم...راستش اون جاییش که به کار من میومد بسیار سریع ازش عبور شده بود...:(
> شاید چیز پیش پا افتاده ای باشه...
> من وقتی add service refrence را میزنم یه پنجره باز میشه که ازم آدرس --سرویس ---عملیات----و namespace رو میپرسه....؟خب حالا چی کار باید بکنم؟


باسلام:

دوست گرامی شما باید در مورد وب سرویسی که میخواید ازش استفاده کنید اطلاعات مربوطه رو داشته باشید.
شما باید URL سرویس و متدی و پارامترهایی که باید به آن سند کنید رو از همون شرکتی که این سرویس رو ازش تهیه کردید دریافت کنید.

----------


## alonemm

> سلام دوست عزیز
> با تشکر از مقاله خوب و مفیدی که ارائه کردید
> من مطابق دستورات شما وب سرویس را ساختم از طریق سرویس داخل خود ویژوال استادیو اجرا میشود ولی وقتی میخواهم ان را از طریق iis اجرا کنم اجرا نمی شود
> همچنین در خصوص نحوه اپلود و قرار دادن وب سرویس بر روی هاست اینترنتی بیشتر و کاملتر توضیح دهید من یک فولدربا نام test در wwwroot ساختم و فایلهای ایجاد شده توسط publisher را در انجا کپی کردم سپس از طریق ادرس www.hostname/test/webservisename.asmx قصد دسترسی داشتم که امکانپذیر نبود
> لطفا راهنمایی فرمائید
> ممنون


دوست گرامی :

1 بار دیگه پروژه رو پابلیش کنید و مطمعن بشید که خطایی نداره.
سپس بعد از آپلود آدرس سرویس رو بزارید تا برسی کنم.

----------


## alonemm

> این دقیقا سوال من هم هست!


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

----------


## alonemm

> سلام 
> 
> میشه ایجاد یک وب سرویس بدون اینکه توی هاست قرار بدم کنم ( localhost webservice) رو توضیح بدید و اینکه چطور توی یک lable توی یک وب سایت نمایش بدم ؟ 
> 
> ممنون


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

برای قراردادن روی IIS هم فقط کافی یک سایت تعریف کنید و تنظیمات مربوط رو انجام بدید مثل یک سایت معمولی.

----------


## alonemm

> سلام 
> 
> میشه ایجاد یک وب سرویس بدون اینکه توی هاست قرار بدم کنم ( localhost webservice) رو توضیح بدید و اینکه چطور توی یک lable توی یک وب سایت نمایش بدم ؟ 
> 
> ممنون


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

برای قراردادن روی IIS هم فقط کافی یک سایت تعریف کنید و تنظیمات مربوط رو انجام بدید مثل یک سایت معمولی.

----------


## sds1920

> برای نمایش اطلاعات شما میتونید یک وب سرویس طراحی کنید که اطلاعات مربوطه رو بگیره و در پایگاه داده برنامه وب شما ذخیره کنه سپس شما میتونید داده های مربوطه رو در صفحه وب نمایش بدید.


ممنون دوست عزيز ولي فکر کنم سوال رو خوب متوجه نشده باشيد.
فرض بر اينه که ما دو تا برنامه Windows app داريم روي دوتا کامپيوتري که از وب سرويس ما استفاده مي کنند.آيا ممکنه وقتي مثلا تابع descidcity توسط کامپيوتر اول فرخواني شد جواب براي هر دوتا کامپيوتر ارسال بشه؟(البته فرض مي کنيم که هر دوتا کامپيوتر حداقل يه بار از سرويس استفاده کرده باشند)

----------


## alonemm

> ممنون دوست عزيز ولي فکر کنم سوال رو خوب متوجه نشده باشيد.
> فرض بر اينه که ما دو تا برنامه Windows app داريم روي دوتا کامپيوتري که از وب سرويس ما استفاده مي کنند.آيا ممکنه وقتي مثلا تابع descidcity توسط کامپيوتر اول فرخواني شد جواب براي هر دوتا کامپيوتر ارسال بشه؟(البته فرض مي کنيم که هر دوتا کامپيوتر حداقل يه بار از سرويس استفاده کرده باشند)


دوست گرامی:
شما دارید میگید که وب سرویس توسط کامپیوتر شماره یک فراخوانی شده و یک متد رو اجرا کرده در اینجا کامپیوتر شماره دو دیگه وجود نداره که اطلاعاتی برایش ارسال بشه.

شما بهتره بگید چه کاری میخواید انجام بدید تا بهتر راهنمایی کنم.

----------


## sds1920

مي خوام يه برنامه ويندوزي مثل ياهو مسنجر بسازم تا بتونم اطلاعات رو بدون در خواست کاربر براي اون ارسال کنم.البته نه دقيقا برنامه چت.برنامه اي که بتونه يه سري اطلاعات رو توي شبکه ي اينترنت بين چندتا کامپيوتر جابجا کنه.
اگه کمک کنيد ممنون مي شم :چشمک:

----------


## alonemm

> مي خوام يه برنامه ويندوزي مثل ياهو مسنجر بسازم تا بتونم اطلاعات رو بدون در خواست کاربر براي اون ارسال کنم.البته نه دقيقا برنامه چت.برنامه اي که بتونه يه سري اطلاعات رو توي شبکه ي اينترنت بين چندتا کامپيوتر جابجا کنه.
> اگه کمک کنيد ممنون مي شم


باسلام:

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

----------


## alonemm

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

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

* ارسال اطلاعات از طریق وب سرویس ها --- Send Data with Web Services*

----------


## 123456789momo

سلام 
می شه بگین چطوری باید وب سرویسو آپلود کنیم و چطوری آدرسشو پیدا کنیم تا به برنامه اضافه کنیم

----------


## alonemm

> سلام 
> می شه بگین چطوری باید وب سرویسو آپلود کنیم و چطوری آدرسشو پیدا کنیم تا به برنامه اضافه کنیم


باسلام:

شما باید پروژه رو Publish کنید و سپس بروی هاست انتقال بدید. برای دستیابی هم در پست های صفحه اول توضیح دادم.
موفق باشید.

----------


## Mr.Programmer

سلام اگه میشه راهنمایی کنید برای نوشتن یک برنامه چت باید چیکار کرد ؟
خیلی ممنونم

----------


## alonemm

> سلام اگه میشه راهنمایی کنید برای نوشتن یک برنامه چت باید چیکار کرد ؟
> خیلی ممنونم


سلام دوست من:

این بحث خارج از این تاپیک میباشد.

سعی میکنم در این مورد یک تاپیک جامع راه اندازی کنم.


(دوستان به علت مسائل کاری کمتر وارد سایت میشوم. به زودی پیگیر میشم.)

----------


## نیما حتمی

دوست عزیز میشه نحوه ارتباط برنامه تحت ویندوز بروی وب سرویس بگین؟

----------


## vahide amp

یعنی منی که الان یه وب سایت نوشتم و هاست خریدم با این روش سایتم رو پابلیش کنم رو نت؟
خواهش میکنم کمکم کنین

----------


## parsa lotfy

دوست عزیز من آدرس url رو ک میزنم (ftp://u436828489@31.170.166.131/Service1.asmxl])  ازم ی یوزر و پسورد میخواد ، اونارم ک میزنم ارور میده میگه ftp  رو ساپورت نمیکنه الان من باید چیکار کنم ؟؟؟؟؟؟؟؟؟؟؟؟

----------


## alonemm

> دوست عزیز میشه نحوه ارتباط برنامه تحت ویندوز بروی وب سرویس بگین؟


خب نحوه ارتباط که توضیح داده شد. مشکل شما کجاست؟

----------


## alonemm

> دوست عزیز من آدرس url رو ک میزنم (ftp://u436828489@31.170.166.131/Service1.asmxl])  ازم ی یوزر و پسورد میخواد ، اونارم ک میزنم ارور میده میگه ftp  رو ساپورت نمیکنه الان من باید چیکار کنم ؟؟؟؟؟؟؟؟؟؟؟؟


شما با پرتکل HTTP باید اتصال پیدا کنید چرا از FTP استفاده میکنید؟

----------


## aliphp1

چقدر خوب میشد همچین تاپیکی برای وب سرویس php  هم ایجاد میشد

----------


## saeid0605

سلام 
شما با biztalk server هم کار کردید؟

----------


## bitroo

سلام
این وبسرویس رو باید  روی iis آپلود کنیم یا cpanel هم میشه آپلود کرد؟ 
بعد آپلود فقط برنامه های تحت ویندوز ازش استفاده میکنن یا هر پلتفرمی می تونه وصل شه؟ 
اگه میشه نحوه پابلیش رو هاست رو توضیح بدین
بقیه قسمت ها آسونه. یه ساله دارم دنبال مطلبش می گردم اما هیچ منبعی پیدا نکردم
اگه میشه کمکم کنید لطفا

----------


## dariush123

تا اينجا را بخوبي جلو آمدم ولي در اين مرحله دكمه Add Reference غير فعال است ممكن است راهنمايي كنيد

----------


## nimeyeporedel

دوستان کسی میتونه بهم بگه آیا میشه وب سرویس پرداخت آنلاین رو تو پروژه ویندوزی پیاده کرد؟

----------


## parsa lotfy

سلام... 

من طبق این اموزش یه پروژه ی وب سرویس رو درست کردم...هیچ چیزی رو هم داخلش تغییر ندادم و پابلیش اش کردم توی هاستم...
ولی وقتی میخوام سرویس رو به app اضافه کنم (add refrence) چنین اروری میده...چیکار باید بکنم ؟؟؟

service error.jpg

----------

