This repository was archived by the owner on Oct 16, 2020. It is now read-only.
File tree Expand file tree Collapse file tree
src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1717// DEALINGS IN THE SOFTWARE.
1818
1919using System ;
20+ using System . Collections . Generic ;
2021using System . Diagnostics ;
2122using System . IO ;
2223using System . Net ;
2324using System . Web . Services . Discovery ;
2425using System . Windows . Forms ;
2526using System . Xml ;
27+ using System . Linq ;
2628
2729using ICSharpCode . Core ;
2830using ICSharpCode . SharpDevelop . Gui ;
@@ -43,8 +45,12 @@ public override void Run()
4345 LoggingService . Info ( "Show add reference dialog for " + project . FileName ) ;
4446 using ( SelectReferenceDialog selDialog = new SelectReferenceDialog ( project ) ) {
4547 if ( selDialog . ShowDialog ( SD . WinForms . MainWin32Window ) == DialogResult . OK ) {
48+ var duplicateReferences = new List < string > ( ) ;
4649 foreach ( ReferenceProjectItem reference in selDialog . ReferenceInformations ) {
47- ProjectService . AddProjectItem ( project , reference ) ;
50+ var thisReference = reference ;
51+ if ( project . Items . OfType < ReferenceProjectItem > ( ) . All ( r => r . ShortName != thisReference . ShortName ) ) {
52+ ProjectService . AddProjectItem ( project , reference ) ;
53+ }
4854 }
4955 project . Save ( ) ;
5056 }
@@ -160,7 +166,7 @@ public override void Run()
160166
161167 // Add proxy to code completion.
162168 SD . ParserService . ParseFileAsync ( FileName . Create ( refDialog . WebReference . WebProxyFileName ) ) . FireAndForget ( ) ;
163-
169+
164170 node . Project . Save ( ) ;
165171 }
166172 }
You can’t perform that action at this time.
0 commit comments