কীভাবে ডাব্লুএসডিএল ব্যবহার করবেন


126

আমার একটি ওয়েব পরিষেবা গ্রহন করা দরকার। তারা আমাকে ডাব্লুএসডিএল ফাইল পাঠিয়েছে। এটিকে আমার ওয়েবসাইটে যুক্ত করতে এবং প্রক্সি হিসাবে এটি ব্যবহার শুরু করার জন্য আমার কী করা উচিত। (যদি আমি এটি ভার্চুয়াল ডিরেক্টরিতে রাখি তবে এটি সন্ধান করা যেতে পারে তবে এটি কী আমাকে সত্যিকারের ওয়েব পরিষেবাদির সাথে সংযোগ দেয়?)


9
ঠিক আছে, আমি উত্সাহিত করেছি কারণ এটি এমন একটি প্রশ্ন যা আমি মনে করি এখানকার অন্যান্য ব্যবহারকারীদের উত্তর দেখে উপকৃত হবেন। আমি এই সঠিক সমস্যাটি অনুসন্ধান করছিলাম এবং আমি এটি এখানে পেয়ে খুশি।
schizoid04

উত্তর:


138

আমি ভিজ্যুয়াল স্টুডিও জ্বালিয়ে দেব, একটি ওয়েব প্রকল্প তৈরি করব (বা কনসোল অ্যাপ্লিকেশন - কোনও বিষয় নয়)।

নেট স্ট্যান্ডার্ডের জন্য:

  1. আমি প্রকল্পটিতে ডান-ক্লিক করব এবং অ্যাড প্রসঙ্গ মেনু থেকে "পরিষেবা রেফারেন্স যুক্ত করুন" বাছাই করব ।
  2. আমি অ্যাডভান্সড এ ক্লিক করব, তারপরে অ্যাড সার্ভিস রেফারেন্স এ ক্লিক করব।
  3. আমি ডাব্লুএসডিএল এর সম্পূর্ণ ফাইল পাথ পেয়ে অ্যাড্রেস বারে পেস্ট করব। তারপরে অ্যারো (গো বোতাম) ফায়ার করুন।
  4. যদি ফাইলটি লোড করার চেষ্টা করে একটি ত্রুটি হয়, তবে নীচের চিত্রের মতো ফাইলটি সমাধানের জন্য অবশ্যই একটি ভাঙা এবং অমীমাংসিত ইউআরএল এখানে চিত্র বর্ণনা লিখুন থাকতে হবে: কীভাবে ঠিক করবেন সে সম্পর্কিত তথ্যের জন্য এই উত্তরটি দেখুন: স্ট্যাকওভারফ্লো উত্তর: এর জন্য পরিষেবা রেফারেন্স তৈরি করতে অক্ষম ডাব্লুএসডিএল ফাইল

যদি কোনও ত্রুটি না থাকে তবে পরিষেবাটি অ্যাক্সেস করতে আপনি যে নামস্পেসটি ব্যবহার করতে চান তা কেবল সেট করা উচিত এবং এটি আপনার জন্য তৈরি করা হবে।

নেট কোর জন্য

  1. আমি প্রকল্পটিতে ডান ক্লিক করব এবং যুক্ত প্রসঙ্গ মেনু থেকে সংযুক্ত পরিষেবাটি বেছে নেব।
  2. আমি তালিকা থেকে মাইক্রোসফ্ট ডাব্লুসিএফ ওয়েব পরিষেবা রেফারেন্স সরবরাহকারী নির্বাচন করব।
  3. আমি ব্রাউজ টিপুন এবং ডাব্লুএসডিএল ফাইলটি সরাসরি নির্বাচন করব, নাম স্থানটি সেট করুন এবং আমি যেতে ভাল। আপনার যদি কোনও ত্রুটি দেখা দেয় তবে উপরের ত্রুটি ফিক্স url দেখুন।

উপরের যে কোনও পদ্ধতি আপনার ব্যবহারের জন্য একটি সাধারণ, খুব বেসিক ডাব্লুসিএফ ক্লায়েন্ট তৈরি করবে। উত্পন্ন কোডটিতে আপনার একটি "YourservicenameClient" শ্রেণি খুঁজে পাওয়া উচিত।

রেফারেন্সের উদ্দেশ্যে, উত্পাদিত সিএস ফাইলটি আপনার ওবজে / ডিবাগ (বা প্রকাশ) / এক্সএসডি জেনারেটেড কোডে পাওয়া যায় এবং আপনি এখনও টেম্পিপি ফোল্ডারে ঘরের সন্ধান করতে পারেন।

তৈরি পরিষেবা (গুলি) এর ডাব্লুএসডিএল চুক্তিতে প্রতিটি সংজ্ঞায়িত পদ্ধতির জন্য পদ্ধতি থাকা উচিত।

ক্লায়েন্টকে ইনস্ট্যান্ট করুন এবং আপনি যে পদ্ধতিগুলিতে কল করতে চান তা কল করুন - এটাই আছে!

YourServiceClient client = new YourServiceClient();
client.SayHello("World!");

আপনার যদি দূরবর্তী ইউআরএলটি নির্দিষ্ট করতে (ডিফল্টরূপে তৈরি হওয়া ব্যবহার না করা) প্রয়োজন হয় তবে আপনি সহজেই প্রক্সি ক্লায়েন্টের কনস্ট্রাক্টরে এটি করতে পারেন:

YourServiceClient client = new YourServiceClient("configName", "remoteURL");

configNameব্যবহারের জন্য শেষ পয়েন্টটির নাম কোথায় রয়েছে (আপনি ইউআরএল ব্যতীত সমস্ত সেটিংস ব্যবহার করবেন), এবং এটি remoteURLহল একটি স্ট্রিং যা সংযুক্ত হওয়ার জন্য ইউআরএলকে উপস্থাপন করে (কনফিগের মধ্যে থাকা পরিবর্তে)।


এটি কাজ করে। শুধুমাত্র একটি প্রশ্ন, যদি আমার মেশিনে আমার কাছে ডাব্লুএসডিএল ফাইল থাকে এবং আমি এই ফাইলটিতে রেফারেন্স যুক্ত করি। ইউরাল কার্যকর করার সময় এটি হিট হয় যা ওয়েব সার্ভিসটি হোস্ট করে, বা আমাকে বাঁধাই এবং এন্ড পয়েন্টটি স্পেসিফাই করতে হবে?
jmayor

1
এটি আপনার উপর নির্ভর করে - ডিফল্টরূপে, ক্লায়েন্ট প্রক্সিটির জন্য তৈরি কোডটিতে ডাব্লুএসডিএলের অভ্যন্তরে থাকা ইউআরএল থাকবে - আপনার যদি অন্য কোনও ইউআরএল যেতে হয় তবে আপনার নিজের এটি উল্লেখ করতে হবে।
marc_s

এত সহজ কেন? সেখানে কি ধরা নেই? : পি ধন্যবাদ!
ওডিস

1
গৃহীত উত্তর হিসাবে আপনি যদি কোনও ইউআরএল থেকে ওয়েব হোস্ট করা ডাব্লুএসডিএল কীভাবে ব্যবহার করবেন তাও উল্লেখ করা ভাল good
Caltor

আমি মনে করি এটি কাজ করার জন্য আমি প্রায় কাছাকাছি। আমি অ্যাড সার্ভিস রেফারেন্স সরঞ্জামটি ব্যবহার করে ওয়েব পরিষেবা ইনস্টল করেছি। আমি ক্লায়েন্টকে ইনস্ট্যান্ট করতে সক্ষম হয়েছি, তবে যেখানে ব্যর্থ হয়েছে সেখানে পদ্ধতিগুলি কল করা। শেষ পয়েন্টটি জাভা বাস্তবায়ন ব্যবহার করছে এবং আমি যা দেখতে পাচ্ছি তা হ'ল এক্সএমএল। আমি যে পদ্ধতিতে কল করার চেষ্টা করছি সেটি একটি প্রবক্তাযুক্ত এবং "অন্য কিছু" সন্ধান করছে। যে অন্য কিছু ক্লাস হয়। যা চমকপ্রদ। আমি এটি নীচে একটি পোস্টে রাখতে পারেন যদি এটি সাহায্য করে তবে আমি অবাক হই।
ম্যাপিংম্যান

45

ভিজ্যুয়াল স্টুডিওতে।

  • একটি প্রকল্প তৈরি বা খুলুন।
  • সমাধান এক্সপ্লোরার থেকে ডান ক্লিক প্রকল্প।
  • "পরিষেবা রেফারেন্স যুক্ত করুন" নির্বাচন করুন
  • আপনি প্রাপ্ত ডাব্লুএসডিএলের সাথে ঠিকানাটি আটকান।
  • ঠিক আছে ক্লিক করুন।

যদি কোনও ত্রুটি না থাকে তবে আপনাকে অবজেক্ট ব্রাউজারে এবং সম্পর্কিত সম্পর্কিত সমস্ত পদ্ধতিতে পরিষেবার রেফারেন্স দেখতে সক্ষম হওয়া উচিত।


9
<3 ভিজ্যুয়াল স্টুডিও .. হ্যাঁ, এটি সত্যিই এত সহজ :)
cwap

3
ওপির কোনও ঠিকানা নয় তবে একটি ফাইল রয়েছে।
হেন্ক হলটারম্যান

1
ওয়েব পরিষেবাদির সরবরাহকারী ডাব্লুএসডিএল (অস্পষ্টতার দ্বারা সুরক্ষা) অক্ষম করে থাকতে পারে, সুতরাং এমন কোনও URL নেই যেখানে ডাব্লুএসডিএল অ্যাক্সেস করা যায় এবং তারপরে ভিএস-এ কোনও ওয়েব রেফারেন্স যুক্ত করা কার্যকর হবে না work যাইহোক, সরবরাহকারী আপনার (আমার অর্থ ওপি) পরিষেবা চুক্তি সম্পর্কে আপনার যা যা জানা দরকার তা জানতে চায়, এজন্য তারা ডাব্লুএসডিএল ফাইলটি প্রেরণ করেছে। এখন ওপিকে এটি থেকে প্রক্সি কোড তৈরি করা দরকার, প্রশ্নটি কীভাবে।
আজহেগ্লোভ

3
ফাইলের পথে টাইপ করে। আপনি কী ভাবছেন যে এটি কাজ করে না?
জন স্যান্ডার্স 22

1
হাই @ বিদ্যালাসুন আপনি আমার ক্লাস এক্সপ্লোরারটিতে এই ক্লাসগুলি ব্যবহার করে কীভাবে যাবেন তা সংক্ষেপে ব্যাখ্যা করতে পারো। ?
CalZone

16

ডাব্লুএসডিএল.এক্সই ইউটিলিটি ব্যবহার করুনডাব্লুএসডিএল থেকে ওয়েব পরিষেবা প্রক্সি তৈরি করতে ।

আপনি একটি দীর্ঘ সি # উত্স ফাইল পাবেন যাতে এই শ্রেণীর মতো একটি শ্রেণি রয়েছে:

/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Web.Services.WebServiceBindingAttribute(Name="MyService", Namespace="http://myservice.com/myservice")]
public partial class MyService : System.Web.Services.Protocols.SoapHttpClientProtocol {
    ...
}

আপনার ক্লায়েন্ট-সাইডে, ওয়েব-পরিষেবা গ্রাহক কোড:

  1. মাই সার্ভিস ইনস্ট্যান্ট করুন।
  2. এর url সম্পত্তি সেট করুন
  3. ওয়েব পদ্ধতি অনুরোধ

5
এটি একটি "পুরানো-শৈলী" এএসএমএক্স ওয়েবসার্ভিস তৈরি করে - সেগুলি অপ্রচলিত - আজকাল এর পরিবর্তে কারও উচিত ডাব্লুসিএফ ব্যবহার করা উচিত
মার্ক_স

7

আপনি যদি নেট কোর প্রকল্পে ডাব্লুএসডিএল রেফারেন্স যুক্ত করতে চান তবে কোনও "ওয়েব রেফারেন্স যুক্ত করুন" বিকল্প নেই।

ডাব্লুএসডিএল রেফারেন্স যুক্ত করতে সলিউশন এক্সপ্লোরারে যান, রেফারেন্স প্রকল্প আইটেমটিতে ডান ক্লিক করুন এবং তারপরে অ্যাড কানেক্টেড সার্ভিস অপশনে ক্লিক করুন ।

এখানে চিত্র বর্ণনা লিখুন

তারপরে 'মাইক্রোসফ্ট ডাব্লুসিএফ ওয়েব পরিষেবা রেফারেন্স' ক্লিক করুন:

এখানে চিত্র বর্ণনা লিখুন

ইউআরআই পাঠ্য বাক্সে ফাইলের পাথটি প্রবেশ করুন এবং ডাব্লুএসডিএল আমদানি করুন:

এখানে চিত্র বর্ণনা লিখুন

এটি একটি সাধারণ, খুব বেসিক ডাব্লুসিএফ ক্লায়েন্ট তৈরি করবে এবং আপনি এটির মতো ব্যবহার করতে পারেন:

YourServiceClient client = new YourServiceClient();
client.DoSomething();

এই এক্সটেনশনটি আমার কাছে উপস্থিত হয় না।
রাফায়েল পিজাও
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.