আমি কি এক্সএমএল ফাইল থেকে সি # ক্লাস তৈরি করতে পারি?
আমি কি এক্সএমএল ফাইল থেকে সি # ক্লাস তৈরি করতে পারি?
উত্তর:
হ্যাঁ, xsd.exe ব্যবহার করে
D:\temp>xsd test.xml
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 4.0.30319.1]
Copyright (C) Microsoft Corporation. All rights reserved.
Writing file 'D:\temp\test.xsd'.
D:\temp>xsd test.xsd /classes
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 4.0.30319.1]
Copyright (C) Microsoft Corporation. All rights reserved.
Writing file 'D:\temp\test.cs'.
মন্তব্য
বিকাশকারী কমান্ড প্রম্পটে ডিরেক্টরি কীভাবে পরিবর্তন করবেন উত্তর দিন : \ টেম্প কার্যকর হতে পারে।
আপনি যদি বহু-মাত্রিক অ্যারের জন্য ক্লাস তৈরি করেন তবে এক্সএসডি.এক্সই জেনারেটরে একটি বাগ রয়েছে, তবে কার্যকারণ রয়েছে ।
xsd
চালান ব্যবহার করতে ।
xsd.exe
এর অধীনে পাওয়া যাবে:C:\Program Files (x86)\Microsoft SDKs\Windows
xsd.exe
জন্য পাওয়া গেছে: C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6.1 Tools
আপনি যদি ভিএস ২০১২ (বা আরও নতুন) এর নেট নেট 4.5 প্রকল্পে কাজ করছেন তবে আপনি ক্লাস হিসাবে আপনার এক্সএমএল ফাইলটি বিশেষভাবে আটকে দিতে পারেন ।
EDIT > Paste Special > Paste XML As Classes
xsd
, তবে আউটপুট প্রায় একই।
public (\w+) (\w+)\r\n +\{\r\n +get\r\n +\{\r\n +return this.*;\r\n +\}\r\n +set\r\n +\{\r\n +this.*;\r\n +\}\r\n +\}\r\n
=> public $1 $2 { get; set; }
এবং `প্রাইভেট \ ডাব্লু + \
প্রথমে আমি ভেবেছিলাম পেস্ট স্পেশালটি পবিত্র কচিল! তবে আমি এটি চেষ্টা করেছিলাম এবং ইন্ডিয়ানা জোন্স চলচ্চিত্রের মতো আমার চুলও সাদা হয়ে গেছে।
তবে এখন আমি http://xmltocsharp.azurewebsites.net/ ব্যবহার করি এবং এখন আমি আগের মতোই তরুণ।
এটি কী উত্পন্ন করেছে তার একটি বিভাগ এখানে রয়েছে:
namespace Xml2CSharp
{
[XmlRoot(ElementName="entry")]
public class Entry {
[XmlElement(ElementName="hybrisEntryID")]
public string HybrisEntryID { get; set; }
[XmlElement(ElementName="mapicsLineSequenceNumber")]
public string MapicsLineSequenceNumber { get; set; }
আমি বুঝতে পারি যে এটি একটি পুরানো পোস্ট এবং আপনি সম্ভবত এগিয়ে চলেছেন।
তবে আপনার মতো আমারও একই সমস্যা ছিল তাই আমি নিজের প্রোগ্রামটি লেখার সিদ্ধান্ত নিয়েছিলাম।
আমার জন্য "xML -> xsd -> শ্রেণী" রুটের সমস্যাটি হ'ল এটি কেবলমাত্র একগুচ্ছ কোড তৈরি করেছে যা সম্পূর্ণ অনিবার্য ছিল এবং আমি এটি টার্ফিংয়ে শেষ করেছি।
এটি কোনওভাবে মার্জিত নয় তবে এটি আমার পক্ষে কাজটি করেছে।
আপনি এটি এখানে পেতে পারেন: আপনি যদি এটি পছন্দ করেন দয়া করে পরামর্শ দিন।
আপনি svcutil ( svcutil প্রশ্ন ) বিবেচনা করা উচিত
Xsd.exe এবং svcutil উভয়ই এক্সএমএল স্কিমা ফাইল (.xsd) এ পরিচালনা করে। আপনার এক্সএমএল এই দুটি সরঞ্জামের যে কোনও একটি দ্বারা ব্যবহৃত একটি স্কিমা ফাইল মেনে চলতে হবে।
নোট করুন যে বিভিন্ন তৃতীয় পক্ষের সরঞ্জামগুলিও এর জন্য বিদ্যমান।
ডারিনের পরামর্শ অনুসারে আপনি এক্সএসডি ব্যবহার করতে পারেন।
এ ছাড়া আরও যুক্তিসঙ্গত স্কিমা তৈরির জন্য test.xsd-file এডিট করার পরামর্শ দেওয়া হয়।
type="xs:string"
type="xs:int"
পূর্ণসংখ্যার মানগুলির জন্য পরিবর্তিত
minOccurs="0"
হতে পারে minOccurs="1"
ক্ষেত্রটি যেখানে প্রয়োজন কেবল সেখানে
maxOccurs="unbounded"
পরিবর্তন করা যেতে পারে maxOccurs="1"
যেখানে কেবলমাত্র একটি আইটেম অনুমোদিত
আপনি যদি আরও আপনার ডেটা বৈধ করতে চান তবে আপনি আরও উন্নত এক্সএসডি-এস তৈরি করতে পারেন তবে এটি অন্তত উত্পন্ন সি # তে যুক্তিসঙ্গত ডেটা ধরণের দেবে।
এক্সএসডি ফাইল থেকে স্কিমা শ্রেণি তৈরি করতে নীচের বাক্য গঠনটি ব্যবহার করুন।
C:\xsd C:\Test\test-Schema.xsd /classes /language:cs /out:C:\Test\
এক্সএমএলকে একটি সি # শ্রেণিতে রূপান্তর করতে:
দ্রষ্টব্য: সময়ের পুরোপুরি, এই অ্যাপ্লিকেশনটি প্রতিস্থাপন করা যেতে পারে, তবে সম্ভাবনা রয়েছে, একই জিনিসটি করার মতো আরও একটি সরঞ্জাম থাকবে।