private async Task <bool> RunBlade() { bool ok = await Task.Run(() => { string be = @"C:\Program Files (x86)\Hexagon\PC-DMIS Blade 5.0 (Release)\Blade.exe"; string rpt = @"D:\ServerPathRoot\blades\TestPart\Results\blade190121033341.rpt"; BladeContext bc = new BladeContext(10); return(bc.StartBlade(be, rpt)); }); return(ok); }
public MeasureServiceContext(double pcTimeout, double bdTimeout) { _pcdmisCore = new PCDmisService(pcTimeout /* 测量超时时间 */); // _bladeMeasAssist = new BladeMeasAssist(); _bladeContext = new BladeContext(bdTimeout); _serverInError = false; // 心跳信号 _isConnected = false; _dateTime = DateTime.Now; _timer = new System.Timers.Timer(1000); _timer.Elapsed += ListenHeartbeat; _timer.Start(); //_pcdmisMonitorTimer = new Timer(3000); // PCDMIS监控定时器 //_pcdmisMonitorTimer.Elapsed += _pcdmisMonitorTimer_Elapsed; }
public virtual async Task <BladeContext> OpenBlade(Action <BladeContext> configureContext, string url, Router router, IBladeStack bladeStack, BladeContext currentBlade, IDictionary <string, object> attributes = null) { var routeData = FindRoute(url, router); BladeContext bladeContext = new BladeContext() { Url = url, BladeType = routeData.PageType }; configureContext(bladeContext); RenderFragment renderFragment = (builder) => { builder.OpenComponent(0, routeData.PageType); var i = 1; foreach (var kvp in routeData.RouteValues) { builder.AddAttribute(i++, kvp.Key, kvp.Value); } if (attributes != null) { foreach (var kvp in attributes) { builder.AddAttribute(i++, kvp.Key, kvp.Value); } } builder.CloseComponent(); }; bladeContext.RenderFragment = renderFragment; await bladeStack.ReplaceAfter(currentBlade, bladeContext); return(bladeContext); }