jsonecho

XML to C#

একটি XML ডকুমেন্ট পেস্ট করুন এবং এর কাঠামোর সঙ্গে মেলে এমন C# টাইপ পান।

টুলটি লোড হচ্ছে...

XML to C# কীভাবে ব্যবহার করবেন

  1. একটি প্রতিনিধিত্বমূলক XML নমুনা পেস্ট করুন, আদর্শভাবে যেটিতে সব ঐচ্ছিক ফিল্ড পূরণ করা আছে।
  2. রুট টাইপের নাম ঠিক করুন এবং সহায়ক কোডও চান নাকি শুধু টাইপ তা ঠিক করুন।
  3. তৈরি হওয়া C# কোড আপনার প্রজেক্টে কপি করুন।

XML to C# সম্পর্কে

বড় XML পেলোডের জন্য হাতে মডেল ক্লাস লেখা বিরক্তিকর এবং সেখানেই টাইপো ঢোকে। এখানে একটি নমুনা পেস্ট করুন এবং জেনারেটর কাঠামো বের করে: কোন ফিল্ড আছে, কোনগুলো অবজেক্ট, কোনগুলো অ্যারে এবং প্রতিটি মানের টাইপ কী। আউটপুট প্রপার্টিসহ ক্লাস। "Types only" টিক সরান এবং আউটপুটে Newtonsoft.Json অ্যাট্রিবিউট ও একটি Converter ক্লাস যোগ হয়।

XML প্রথমে আমাদের XML to JSON টুলের মতো একইভাবে JSON-এ রূপান্তরিত হয়: অ্যাট্রিবিউট @_ প্রিফিক্স পায় এবং অ্যাট্রিবিউটের পাশের টেক্সট কনটেন্টের নাম #text। সেই ফলাফল থেকে C# টাইপ তৈরি হয়। প্রপার্টির নাম PascalCase-এ রূপান্তরিত হয় এবং JsonProperty অ্যাট্রিবিউটে সাজানো হয় যাতে আসল কী সংরক্ষিত থাকে।

তৈরি কোড ব্যবহার করা

সহায়কসহ Root.FromJson(json) কল করুন। শুধু টাইপ থাকলে System.Text.Json-এর JsonSerializer.Deserialize<Root>(json) ব্যবহার করুন এবং নাম আলাদা হলে অ্যাট্রিবিউট যোগ করুন।

nullable সদস্য long?, double? ইত্যাদি ব্যবহার করে, প্রযোজ্য ক্ষেত্রে nullable রেফারেন্স টাইপসহ।

সচরাচর জিজ্ঞাসিত প্রশ্ন

তৈরি C# কোড কিসের ওপর নির্ভর করে?

আউটপুট প্রপার্টিসহ ক্লাস। "Types only" টিক সরান এবং আউটপুটে Newtonsoft.Json অ্যাট্রিবিউট ও একটি Converter ক্লাস যোগ হয়।

ফলাফল দিয়ে আমি কীভাবে XML পার্স করব?

আগে XML-কে JSON-এ রূপান্তর করুন (আমাদের XML to JSON টুল একইভাবে তা করে), তারপর সহায়কসহ Root.FromJson(json) কল করুন। শুধু টাইপ থাকলে System.Text.Json-এর JsonSerializer.Deserialize<Root>(json) ব্যবহার করুন এবং নাম আলাদা হলে অ্যাট্রিবিউট যোগ করুন।

ঐচ্ছিক ও বাদ পড়া ফিল্ড কীভাবে সামলানো হয়?

nullable সদস্য long?, double? ইত্যাদি ব্যবহার করে, প্রযোজ্য ক্ষেত্রে nullable রেফারেন্স টাইপসহ।

জেনারেটর কি একাধিক রেকর্ড দেখে?

এটি শুধু আপনার নমুনায় যা আছে তা-ই জানে। কোনো ফিল্ড আপনার উদাহরণে না থাকলে তা টাইপে আসবে না, এবং আপনার উদাহরণে কোনো মান null হলে তার টাইপ অজানা। যতটা সম্ভব ফিল্ড পূরণ করা একটি উদাহরণ পেস্ট করুন, অথবা একাধিক ভিন্ন রেকর্ডসহ একটি অ্যারে পেস্ট করুন।

আমার XML কি সার্ভারে পাঠানো হয়?

না। জেনারেটর প্রথমবার ব্যবহারের সময় আপনার ব্রাউজারে ডাউনলোড হয়, প্রায় 1 MB, এবং সবকিছু লোকালি চলে।

ডেটা থেকে ক্লাস-এ আরও

সব টুল →