我有很多(+2000)GUID(在某些网络类中),我的程序在收到消息并完成与之相关的工作时必须找到其中一个.
积极的一点是我有一个硬代码生成器,但最快的方法是我的目标(我不知道如何实现它).
我的代码应该做这样的事情:
switch(received guid)
{
case guid1: do job 1; break;
case guid2: do job 2; break;
case guid3: do job 3; break;
case guid4: do job 4; break;
....
}
Run Code Online (Sandbox Code Playgroud)
创建一个用于执行Job的接口,然后实现2000个完成工作的类,每个类都知道自己的guid.然后使用guid作为键将类添加到字典中.然后当你获得guid时,你在字典中查找对象并在界面上调用方法.
public interface IJobDoer
{
void DoJob();
Guid Guid{get;}
}
public class FirstJobType : IJobDoer
{
void DoJob()
{
/// whatever...
}
Guid Guid { get{return "insert-guid-here";}}
}
Run Code Online (Sandbox Code Playgroud)