当前位置: 代码迷 >> C# >> using用法 以及factaddressvalue的探讨
  详细解决方案

using用法 以及factaddressvalue的探讨

热度:92   发布时间:2016-05-05 04:16:57.0
using用法 以及factaddressvalue的探讨求助
private void OnClickButton(object sender, EventArgs e) {
             Button button = sender as Button;
             // Get the state-list.
             String evalStr = "(find-all-facts ((?f state-list)) TRUE)";
             using (FactAddressValue f = (FactAddressValue)((MultifieldValue)_theEnv.Eval(evalStr))[0]) {
这是一段关于clips.net的编程代码,从 // Get the state-list.的代码不能够明白,求教大神给讲解一下!
------解决思路----------------------
             String evalStr = "(find-all-facts ((?f state-list)) TRUE)";//一个字符串

FactAddressValue f = (FactAddressValue)((MultifieldValue)_theEnv.Eval(evalStr))[0]
_theEnv.Eval(evalStr) //执行Eval
(MultifieldValue)_theEnv.Eval(evalStr) //强转
((MultifieldValue)_theEnv.Eval(evalStr))[0]//获取索引0 对应的对象
(FactAddressValue)((MultifieldValue)_theEnv.Eval(evalStr))[0]//强转

------解决思路----------------------
using在这里相当于
FactAddressValue f = (FactAddressValue)((MultifieldValue)_theEnv.Eval(evalStr))[0];
try
{
    // using块内的代码
}
finally
{
    IDisposable idis = f as IDisposable;
    idis.Dispose();
}
  相关解决方案