多平台统一管理软件接口,如何实现多平台统一管理软件接口
418
2024-02-04
本文讲解"c#自定义Attribute获取接口实现示例代码",用于解决相关问题。
一般的接口实现多态
定义接口
interface Ipeople{void say();}定义实现的类
public class man : Ipeople{public void say(){ MessageBox.Show("man");}} public class woman : Ipeople{public void say(){ MessageBox.Show("woman");}}一般实现的方法
升级版
添加自定义(这个网上好多)
实现类
调用方法
private static void NewMethod(string tpye){ Ipeople ib = null; var types = AppDomain.CurrentDomain.GetAssemblies() .SelectMany(a => a.GetTypes().Where(t => t.GetInterfaces().Contains(typeof(Ipeople)))) .ToArray(); foreach (var v in types) { var attribute = v.GetCustomAttributes(typeof(NameAttribute), false).FirstOrDefault(); if (attribute != null && ((NameAttribute)attribute).Name == tpye) { ib = (Ipeople)v.Assembly.CreateInstance(v.FullName); break; } } if (ib != null) ib.say();}这个可以避免需要维护swich语句
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对亿速云的支持。
关于 "c#自定义Attribute获取接口实现示例代码" 就介绍到此。希望多多支持
本文讲解"C# 实现PPT 每一页转成图片过程解析",用于解决相关问题。要实现PPT转图片,首先需要引用两个DLL。我这里用的这个这个版本Microsoft.Office.Interop.Power ...
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~