সি #: কীভাবে অবজেক্টের তালিকাটিকে সেই অবজেক্টের একক সম্পত্তির তালিকায় রূপান্তর করতে?


104

বলুন আমার আছে:

IList<Person> people = new List<Person>();

এবং ব্যক্তির অবজেক্টটিতে ফার্স্টনাম, লাস্টনাম, এবং লিঙ্গের মতো বৈশিষ্ট্য রয়েছে।

আমি কীভাবে এটি ব্যক্তির বস্তুর বৈশিষ্ট্যের তালিকায় রূপান্তর করতে পারি। উদাহরণস্বরূপ, প্রথম নামের একটি তালিকাতে।

IList<string> firstNames = ???

উত্তর:


179
List<string> firstNames = people.Select(person => person.FirstName).ToList();

এবং বাছাই সহ

List<string> orderedNames = people.Select(person => person.FirstName).OrderBy(name => name).ToList();

ধন্যবাদ। এছাড়াও, আমি কীভাবে প্রথম নাম অনুসারে বর্ণমালা অনুসারে বাছাই করব?
ব্যবহারকারী

তালিকা <স্ট্রিং> ফার্স্ট নেমস = লোক e নির্বাচন করুন (ব্যক্তি => ব্যক্তি F প্রথম নাম) oToList () ort। বাছাই করুন (); এটি স্ট্রিংয়ের ডিফল্ট বর্ণমালা বাছাই করে বাছাই করবে।
পল উইলিয়ামস

বাছাই করুন () একটি সাবলীল ইন্টারফেস সমর্থন করে না! ফার্স্টনেমস.সোর্ট () আলাদাভাবে কল করুন
দারিও

var তালিকা = লোকের মধ্যে ব্যক্তি থেকে অর্ডারযুক্ত ব্যক্তি F প্রথম নামটি ব্যক্তি নির্বাচন করুন irst প্রথম নাম;
কনসাল্টউটা

এসও এর সেরা উত্তরগুলির মধ্যে একটি! (আমার অজ্ঞতা হতে পারে) :)
নওফাল

5
IList<string> firstNames = (from person in people select person.FirstName).ToList();

অথবা

IList<string> firstNames = people.Select(person => person.FirstName).ToList();

3
firstNames = (from p in people select p=>p.firstName).ToList();

7
এই ক্ষেত্রে একটি ক্যোয়ারী এক্সপ্রেশন ব্যবহার করা ওভারকিল, আইএমও। আপনি যদি কেবল একটি সাধারণ ক্রিয়াকলাপ পেয়ে থাকেন তবে ডট সংকেতটিতে কম ফ্লফ রয়েছে।
জন স্কিটি

1
সত্য, তবে প্রশ্নটি ছিল "এটি কীভাবে করা যায়" ... "কমপক্ষে ফ্লাফের সাথে এটি কীভাবে করা যায়" নয়। কোন অনাদরের উদ্দেশ্য, জন। (দয়া করে আমাকে মারবেন না)
ড্যান এস্পারজা

1
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace TestProject
{
    public partial class WebForm3 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            SampleDataContext context = new SampleDataContext();
            List<Employee> l = new List<Employee>();
            var qry = from a in context.tbl_employees where a.Gender=="Female"  
                orderby  a.Salary ascending
            select new Employee() {
                           ID=a.Id,
                           Fname=a.FName,
                           Lname=a.Lname,
                           Gender=a.Gender,
                           Salary=a.Salary,
                           DepartmentId=a.DeparmentId
            };
            l= qry.ToList();
            var e1 =  from  emp in context.tbl_employees
                where emp.Gender == "Male"
                orderby emp.Salary descending
                select  emp;
            GridView1.DataSource = l;
            GridView1.DataBind();
        }
    }
    public class Employee
    {
        public Int64 ID { get; set; }
        public String Fname { get; set; }
        public String Lname { get; set; }
        public String Gender { get; set; }
        public decimal? Salary { get; set; }
        public int? DepartmentId { get; set; }
    }
}

0
using System.Collections.Generic;
using System.Linq;

IList<Person> people = new List<Person>();
IList<string> firstNames = people.Select(person => person.FirstName).ToList();

এই কোড স্নিপেটের জন্য আপনাকে ধন্যবাদ, যা কিছু সীমিত স্বল্পমেয়াদী সহায়তা সরবরাহ করতে পারে। একটি সঠিক ব্যাখ্যা কেন এটি সমস্যার একটি ভাল সমাধান এবং এটি ভবিষ্যতে পাঠকদের আরও অন্যান্য অনুরূপ প্রশ্নের সাথে আরও দরকারী করে তুলে ধরে তার দীর্ঘমেয়াদী মানকে ব্যাপকভাবে উন্নত করবে। আপনার অনুমানগুলি সহ কিছু ব্যাখ্যা যুক্ত করতে দয়া করে আপনার উত্তরটি সম্পাদনা করুন
শন সি।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.