コード例 #1
0
        public IEnumerable <AssemblyReference> GetStandardReferences()
        {
            var paths = (StandardDotNetReferencePaths.Value ?? Enumerable.Empty <string>()).ToArray();

            Log.Debug("Standard .NET References: " + string.Join(", ", paths));

            foreach (var path in paths)
            {
                AssemblyReference assemblyReference;
                string            message;

                Log.Debug("Loading standard reference {0}... ", path);

                var isLoadable = AssemblyReference.TryLoadReference(path, out assemblyReference, out message);

                if (!isLoadable)
                {
                    Log.Warn("Reference {0} NOT loaded.", path);
                    continue;
                }

                Log.Info("Standard reference {0} loaded.", path);

                assemblyReference.IsStandard = true;

                yield return(assemblyReference);
            }
        }
コード例 #2
0
        public bool TryAddReference(string filePath, out string message)
        {
            AssemblyReference assemblyReference;

            AssemblyReference.TryLoadReference(filePath, out assemblyReference, out message);

            if (assemblyReference == null)
            {
                return(false);
            }

            assemblyReference.IsInstalled = assemblyReference.IsRecent = true;
            RecentReferences.References.Add(assemblyReference);
            InstalledReferences.References.Add(assemblyReference);

            return(true);
        }