আমার প্রায়শই ওয়েবএপিআইয়ের সাথে ক্লায়েন্টে ফিরিয়ে দেওয়ার আগে আমার ডোমেন মডেলটিকে অতিরিক্ত তথ্যের সাথে প্রসারিত করতে হবে। ভিউমোডেল তৈরি করা এড়াতে আমি ভেবেছিলাম অতিরিক্ত বৈশিষ্ট্য সহ আমি JObject ফিরতে পারি। তবে আমি নিউটোনসফট জেএসওন লাইব্রেরিতে একক কল দিয়ে যোবজেক্টে কোনও প্রকারের অবজেক্টকে রূপান্তর করার সরাসরি উপায় খুঁজে পাইনি। আমি এরকম কিছু নিয়ে এসেছি:
- প্রথম সিরিয়ালাইজ অবজেক্ট
- তারপরে পার্স
- এবং JObject প্রসারিত করুন
যেমন:
var cycles = cycleSource.AllCycles();
var settings = new JsonSerializerSettings
{
ContractResolver = new CamelCasePropertyNamesContractResolver()
};
var vm = new JArray();
foreach (var cycle in cycles)
{
var cycleJson = JObject.Parse(JsonConvert.SerializeObject(cycle, settings));
// extend cycleJson ......
vm.Add(cycleJson);
}
return vm;
আমি এই সঠিক উপায়?
JObject.FromObject(your_domain_object)আপনি যা খুঁজছেন তা @ এলবি এর উত্তর দেখুন।