我有一個.csv
文件(Book1.csv
)包括有限狀態機的轉換:`.csv`文件的內容應該是`IEnumerable <T>'類型?
q_src,eve,q_dst
q0,sig1,q1
q1,sig2,q2
我需要編寫找到一個轉移的結果的方法。
State FindDestination(State q0, Event s0)
{
var transitions = File.ReadAllLines(@"Book1.csv").Skip(1).Select(x => x.Split(','));
State newq = from t in transitions
where t.q_src ==q0 && t.eve == s0
select new t.q_dst;
return newq;
}
但它不是有效的,因爲該方法將每個過渡每次讀取文件:
現在,如果我嘗試讀取文件一次,並通過其內容的方法,我不是k 現在我應該使用什麼類型的方法的參數的transitions
:
var transitions = File.ReadAllLines(@"Book1.csv").Skip(1).Select(x => x.Split(','));
State FindDestination(State q0, Event s0, ? transitions) //?type
{
State newq = from t in transitions
where t.q_src ==q0 && t.eve == s0
select new t.q_dst;
return newq;
}
此外,State
和Event
類只有一個屬性Name
。
我讀過粗略的想法是使用IEnumerable<?>
,但.csv
文件的?
類型是什麼?