前两天看见扩展属性,瞬间感觉微软需要学习的东西实在是太多了,博大精深,我还差得很远,以下的扩展方法就是一个很好的东西。
现在我先建立一个model
public class Student { public string Id { get; set; } public string Name { get; set; } }
在实际场景中,可能我们需要在这个model里需要写一些方法,一些查询等等,但是我们在设计时希望model里面只是声明属性,其它方法不放在model里面,那么怎么做到两者兼容呢,扩展方法可以帮助到你,如下:
我们建立一个扩展类,
public static class StudentEx { public static int GetAge(this Student st) { return 1; } }
那么现在就可以直接调用了,调用如下:
Student st = new Student(); Console.WriteLine(st.GetAge());
是不是很简单,我们可以任意在model外面为model加载扩展方法。