Copy giá trị thuộc tính của A cho B

Note - Tips - Trick - .Net

0.0 (0 đánh giá)
Tạo bởi K9 Cập nhật lần cuối 19:13 10-07-2018 3.840 lượt xem 0 bình luận
Học nhanh

Danh sách bài học

Copy giá trị thuộc tính của A cho B

Sẽ có bạn từng gặp vấn đề. Làm sao copy giá trị các thuộc tính của A cho B khi mà không phải viết hàm copy từng thuộc tính, clone hay gán giá trị bằng. Class dưới đây sẽ giúp bạn làm việc đó. Nếu hay và bổ ích. Nó giúp bạn tiết kiệm thời gian cũng như chi phí thì đừng ngần ngại donate cho Kteam để đội ngũ Kteam tiếp tục nghiên cứu và phát triển thêm các tính năng giúp mọi người nhé.

class PropertyCopier.cs

public static class PropertyCopier<TParent, TChild> where TParent : class
                                            where TChild : class
    {
        public static void Copy(TParent parent, TChild child)
        {
            var parentProperties = parent.GetType().GetProperties();
            var childProperties = child.GetType().GetProperties();

            foreach (var parentProperty in parentProperties)
            {
                foreach (var childProperty in childProperties)
                {
                    if (parentProperty.Name == childProperty.Name && parentProperty.PropertyType == childProperty.PropertyType)
                    {
                        childProperty.SetValue(child, parentProperty.GetValue(parent));
                        break;
                    }
                }
            }
        }
    }

 

 

Cách dùng

var select = new NhaCungCap();
select.Email = "a@gmail.com";
select.Address = "11/1B Khe Sanh Đà Lạt";


NhaCungCap mainData = new NhaCungCap();
PropertyCopier<NhaCungCap, NhaCungCap>.Copy(select,mainData);
             
Console.WriteLine(mainData.Address);

 


Thảo luận

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần BÌNH LUẬN bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.

Nội dung bài viết

Tác giả

K9

Nhà sáng lập Howkteam.com & tác giả các khóa học C#, Auto, Unity3D, Python....

Với mong muốn mang đến kiến thức chất lượng, miễn phí cho mọi người, với tâm huyết phá bỏ rào cản kiến thức từ việc giáo dục thu phí. Tôi đã cùng đội ngũ Kteam đã lập nên trang website này để thế giới phẳng hơn.
Hãy cùng chúng tôi lan tỏa kiến thức đến cộng đồng! 

Khóa học

Note - Tips - Trick - .Net

Lưu các thủ thuật, code mẫu, cách dùng về .Net

Đánh giá

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Không có video.