সি # তে এক্সপ্রেশন ট্রিগুলি সিরিয়ালাইজিং এবং ডিজিজারাইজ করা হচ্ছে


92

সি # তে এক্সপ্রেশনগুলি ডিসরিয়ালাইজ করার কোনও উপায় আছে, আমি একটি ডেটাবেসে এক্সপ্রেশনগুলি সঞ্চয় করতে এবং রান সময়ে এগুলি লোড করতে চাই।


কি মত প্রকাশ? রেজেক্স?
জন লিমাজাপ

16
আমি "গাছ" দেওয়া, System.Linq. এক্সপ্রেশন ধরনের এক্সপ্রেশন অনুমান করব।
ডেভিড ওয়েঙ্গিয়ার

উত্তর:


48

আমি লাইব্রেরিতে কাজ চালিয়েছি যা সি # তে এক্সপ্রেশন ট্রিগুলি সিরিয়ালাইজিং এবং ডিসরিয়ালাইজিং দ্বারা উল্লেখ করা হয়েছিল

দেখে মনে হচ্ছে প্রকল্পটি পরিত্যাগ করা হয়েছিল (২০০৮) তবে আমি এটিতে কিছু কাজ করেছি এবং এখন এটি নেট .০ এবং সিলভারলাইটের সাথে কাজ করে। আমি তাদের কোডগুলিতে বাগ ফিক্স তৈরি করেছি এবং এটিকে আরও ডাল-স্বতন্ত্র করে তুলেছি।

http://expressiontree.codeplex.com/


4
কার্যক্ষম সমাধান নিয়ে আসার জন্য +1। আমি এমএসডিএন-তে মূল লাইব্রেরিটি ব্যবহার করার চেষ্টা করেছি এবং এটি একটি সাধারণ বাইনারি এক্সপ্রেশন নোডকে deserialize করতে পারে না। আপনার প্রকল্প দুর্দান্ত কাজ করে। ধন্যবাদ!
জ্যাকবস ডেটা সলিউশন

4
এটি কি নুগেটে প্রকল্প রয়েছে?
মোহাম্মদ দায়ান

মোঃ মুহম্মদদায়ান, মাইক্রোসফ্ট তার প্যাকেজ পরিচালন সরঞ্জামে দ্বিধাবিভক্ত এবং অসঙ্গত রয়েছে। কখনও কখনও এএসপি.নেট কোর প্যাকেজগুলি নুগেটের সাথে ইনস্টল করা যায়, অন্য ক্ষেত্রে যেমন একটি মঙ্গোডিবি ড্রাইভার নুগেটের মাধ্যমে উপলব্ধ হবে না। তবুও কমপক্ষে মাইক্রোসফ্টের এনপিএমকে প্যাকেজ পরিচালনা করার অনুমতি দেওয়ার অন্তর্দৃষ্টি ছিল। এটি এনপিএম
টি ওয়েবস্টার

@ রেপোমন সমস্যা সমাধান করা আমার পক্ষে অনেক বেশি মূল্য যখন এটি কারওর পক্ষে সহায়তা করে। সম্ভবত আপনি ব্যবহারের জন্য কিছু ডকুমেন্টেশন অবদান রাখতে পারেন - আসুন কথা বলুন ..
টি। ওয়েবস্টার

14

অন্য বিকল্পটি হ'ল কোড. msdn.com এ এক্সপ্রেশন ট্রি সিরিয়ালাইজেশন প্রকল্প - এখানে কী প্রয়োজন তা আরও বেশি প্রদর্শিত হবে?

UPD: এখন http://archive.msdn.microsoft.com/exprserialization


এক্সপ্রেশন ট্রি সিরিয়ালাইজেশন কোডটি গ্যালারী কোড.এমএসএনএন.মাইক্রোসফট / এক্সপ্রেসরিয়ালাইজেশন থেকে সরানো হয়েছে , কোনও ধারণা যেখানে এটি স্থানান্তরিত হয়েছে বা আরও উন্নত বিকল্পে?
কিরণ ভীমরতি

@ কিরান: আপনার মানে কী? কোড ডাউনলোড এখনও আছে; পৃষ্ঠার শীর্ষে ডাউনলোড ট্যাবটি চেক করুন।
রবার্ট হার্ভে

হ্যাঁ এটি এখন, সম্ভবত একটি অস্থায়ী জিনিস, পৃষ্ঠাটি একটি প্রকল্প নিক্ষেপ করছে গতকাল যখন আমি উপরের লিঙ্কটি চেষ্টা করেছি তখন ত্রুটি পাওয়া যায়নি। আমি প্রকল্পটি দেখতে এবং এখন ডাউনলোড। ধন্যবাদ !!!
কিরণ ভীমরতি

13

গিটহাব / নুগেটে একটি প্রকল্প রয়েছে যার নাম মেটালিংক যা অভিব্যক্তি কাজ করা আরও সহজ করে তোলে।

এটি সাধারণ এক্সপ্রেশন এবং 'এডিটেবলএক্সপ্রেসনস' এর মধ্যে রূপান্তর করে যা রূপান্তরযোগ্য এবং পুরোপুরি সিরিয়ালাইজেবল, তাই জসন, এক্সএমএল, বাইনারি ইত্যাদির সাথে ব্যবহার করা যেতে পারে

আরও তথ্যের জন্য এই ব্লগ পোস্ট চেক করুন ।


12

আমার নতুন লাইব্রেরি সিরিয়ালাইজ করুন । লিঙ্ক দেখুন । এটি লিনক এক্সপ্রেশনগুলি জেসন, এক্সএমএল এবং বাইনারিগুলিতে ক্রমিক করে।


আপনি কি আগে এটি ব্যবহার করেছেন? আপনার অভিজ্ঞতা কেমন ছিল / কোনও সীমাবদ্ধতা খুঁজে পেয়েছিল?
আলেকজান্দ্রে ব্রাইসোবাইস

আমি আমার শেষ প্রকল্পে এর অনুরূপ সংস্করণ ব্যবহার করেছি used ভাল কাজ করে।
Esskar

আপনি এমন কিছু কেন লিখবেন যা স্তরগুলির মধ্যে লাইনগুলি আরও খারাপ করে? আপনি ড্যাল ডোমেন অবজেক্টগুলির বিএএল-তে প্রকাশের প্রচার করছেন ... যদি না আপনার লাইব্রেরিটি কোনওভাবে স্বয়ংক্রিয়ভাবে ডিটিও (এবং তাদের বিরুদ্ধে অনুসন্ধানগুলি) ডোমেন অবজেক্ট / কোয়েরিতে রূপান্তর করে না। আমি ডক্সে এমন আচরণের ইঙ্গিত দিয়ে কিছু দেখছি না।
এমব্যাবকক

@ এমব্যাবকক: আপনি ডিটিও বনাম সত্তা আপনার অভিব্যক্তিগুলিতে যা ব্যবহার করতে চান তা লাইব্রেরির যুক্তির অংশ নয়।
এসকর

4
@ এসকর আপনার ব্লগ / পুরো সাইটটি শেষ হয়ে গেছে বলে মনে হচ্ছে। এটা সরানো হয়েছে?
জন

3

পূর্ণ নয়; তবে ডায়নামিক লিনকিউ নমুনা কিছুটা সহায়তা করতে পারে। আপনি অবশ্যই একটি স্ট্রিংতে একটি এক্সপ্রেশনকে সিরিয়ালাইজ করতে পারেন (কিছুটা হলেও - জেনেরিকাগুলি খানিকটা চতুর দেখায়) তবে কোনও ইনবিল্ট পার্সার নেই।


স্ট্রিং হিসাবে গ্রহণ করতে এবং একটি এক্সপ্রেশন ট্রি তৈরি করতে আমি কীভাবে স্ট্রিমটিতে একটি এক্সপ্রেশনকে সিরিয়ালায়িত করতে পারি, কেবল অন্য দিকটিই direction আমি কোন পদ্ধতিটি কল করব?
ক্রিস্টোফার এডওয়ার্ডস

2

ডাব্লুসিএফ আরআইএ পরিষেবাদি সিরিয়ালাইজ করার অনুমতি দেয় IQuerayble<T>

ডাব্লুসিএফ আরআইএ সার্ভিসেস পার্ট 3 - আপডেট করা ডেটা


আমার বিশ্বাস এই আরও প্রাসঙ্গিক হল: silverlightshow.net/items/...
এনরিকো Campidoglio

1

আমি অনুমানের ক্রমিকায়নের জন্য একটি প্রকল্পে কাজ করছিলাম। এটি ঠিক আছে এবং আপনি এটি ব্যবহার করতে পারেন। http://www.codeproject.com/Articles/851187/S সার্ভিসপ্রডিকেটবিল্ডার- জন্য- ক্রিয়েটিং- চালিত

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