protected override void WatcherChanged(object sender, FileSystemEventArgs e)
        {
            var path      = e.FullPath;
            var extension = Path.GetExtension(e.FullPath);

            if (extension == ScriptEngines.ScriptExtension)
            {
                if (e.FullPath.StartsWith(ScriptEngines.AppScriptDomain.BaseDirectory, System.StringComparison.CurrentCultureIgnoreCase))
                {
                    //AppScript 剔除
                    return;
                }

                var index = path.LastIndexOf('.');
                path = path.Substring(0, index);
            }

            ScriptAssembly assembly;

            if (e.ChangeType == WatcherChangeTypes.Renamed)
            {
                ScriptAssemblies.TryRemove(path, out assembly);
            }
            else if (ScriptAssemblies.TryGetValue(path, out assembly))
            {
                assembly.Reset();
            }
        }
Ejemplo n.º 2
0
        protected override void WatcherChanged(object sender, FileSystemEventArgs e)
        {
            ScriptAssembly assembly;

            if (e.ChangeType == WatcherChangeTypes.Renamed)
            {
                ScriptAssemblies.TryRemove(e.FullPath, out assembly);
            }
            else if (ScriptAssemblies.TryGetValue(e.FullPath, out assembly))
            {
                assembly.Reset();
            }
        }