কোয়েরিয়েবল.সিলেক্টম্যান () পদ্ধতির জন্য কি সি # লিনকিউ সিনট্যাক্স রয়েছে?


88

সি # লিনকিউ সিনট্যাক্স ব্যবহার করে কোনও ক্যোয়ারী লেখার সময়, কীওয়ার্ড সিনট্যাক্স থেকে কোয়েরিয়েবল.সিলেক্টম্যানি পদ্ধতি ব্যবহার করার কোনও উপায় আছে?

জন্য

string[] text = { "Albert was here", 
                  "Burke slept late", 
                  "Connor is happy" };

সাবলীল পদ্ধতি ব্যবহার করে আমি জিজ্ঞাসা করতে পারি

var tokens = text.SelectMany(s => s.Split(' '));

অনুরূপ একটি কোয়েরি সিনট্যাক্স অনুরূপ

var tokens = from x in text selectmany s.Split(' ')

উদাহরণটির কিছুটা উন্নতি প্রয়োজন ... তবে আমার সন্দেহ হয় যে এটি প্রাথমিক পয়েন্টটি পেয়েছে। আরও ভাল উদাহরণ প্রস্তাব নির্দ্বিধায়।
— ব্রায়ানকুকি

উত্তর:


126

হ্যাঁ, আপনি কেবল ... ধারাটিতে পুনরাবৃত্তি করেছেন:

var words = from str in text
            from word in str.Split(' ')
            select word;

4
@ বুকসি - হ্যাঁ ... কারণ আপনি প্রথম ফলাফলের ভিতরে নেস্টেড কোনও সংগ্রহ থেকে নির্বাচন করছেন।
— জাস্টিন নিসনার

4
এই সমস্ত কলগুলি সেলেঙ্কম্যান দ্বারা পরিবেশন করা যেতে পারে, যা অত্যন্ত নমনীয়, তবে সংকলকটি সিলেক্ট, সিলেক্টম্যান এবং এমনকি কোনও পরিবর্তনের মধ্যে বেছে নেবে, কোয়েরির ফর্মের উপর নির্ভর করে
— স্প্রেড


18

আপনার জিজ্ঞাসাটি আবার লিখিত হবে:

var tokens = from x in text
             from z in x.Split(' ')
             select z;

এখানে একটি ভাল পৃষ্ঠা যা ল্যাম্বডা এবং ক্যোয়ারির সিনট্যাক্সের দু'পাশে পাশের উদাহরণ রয়েছে:

অনেক অপারেটর পর্ব 1 নির্বাচন করুন - জিশান হিরানী

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