<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Why is Add Reference Still Horribly Broken in VS2010?</title>
	<atom:link href="http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/</link>
	<description>The Technical Jibber Jabber of Steven Robbins</description>
	<lastBuildDate>Tue, 13 Dec 2011 14:22:47 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: fdsa</title>
		<link>http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/comment-page-1/#comment-380</link>
		<dc:creator>fdsa</dc:creator>
		<pubDate>Thu, 27 Oct 2011 20:50:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.grumpydev.com/?p=306#comment-380</guid>
		<description>Do you ever find that your credibilty is ruined somewhat by your use of comic sans in screen mock-ups?</description>
		<content:encoded><![CDATA[<p>Do you ever find that your credibilty is ruined somewhat by your use of comic sans in screen mock-ups?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: LordOnlyKnows</title>
		<link>http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/comment-page-1/#comment-366</link>
		<dc:creator>LordOnlyKnows</dc:creator>
		<pubDate>Wed, 06 Jul 2011 21:35:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.grumpydev.com/?p=306#comment-366</guid>
		<description>Another slight annoyance comes when I add a new project to my solution and it&#039;s using a different Target Framework by default then the rest of my solution. Instead of an error message saying something like &quot;Target Framework 4.0 referenced project not compatible with Target Framework 3.5 project&quot; it instead allows me to add the reference and gives me the oh-so-clever &quot;The type or namespace name &#039;Foo&#039; does not exist in the namespace &#039;Goo&#039; (are you missing an assembly reference?)&quot; I know, shame on me for not checking this, but the fix always eludes me for 2-3 minutes: right click on the new project-&gt;properties-&gt;change the target framework to what the other projects are using.</description>
		<content:encoded><![CDATA[<p>Another slight annoyance comes when I add a new project to my solution and it&#8217;s using a different Target Framework by default then the rest of my solution. Instead of an error message saying something like &#8220;Target Framework 4.0 referenced project not compatible with Target Framework 3.5 project&#8221; it instead allows me to add the reference and gives me the oh-so-clever &#8220;The type or namespace name &#8216;Foo&#8217; does not exist in the namespace &#8216;Goo&#8217; (are you missing an assembly reference?)&#8221; I know, shame on me for not checking this, but the fix always eludes me for 2-3 minutes: right click on the new project-&gt;properties-&gt;change the target framework to what the other projects are using.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marcel Wijnands</title>
		<link>http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/comment-page-1/#comment-229</link>
		<dc:creator>Marcel Wijnands</dc:creator>
		<pubDate>Mon, 22 Mar 2010 09:04:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.grumpydev.com/?p=306#comment-229</guid>
		<description>I totally agree! This is very annoying..</description>
		<content:encoded><![CDATA[<p>I totally agree! This is very annoying..</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Ivan</title>
		<link>http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/comment-page-1/#comment-225</link>
		<dc:creator>Ivan</dc:creator>
		<pubDate>Sat, 20 Mar 2010 20:43:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.grumpydev.com/?p=306#comment-225</guid>
		<description>Yes, I was thinking the same thing when I saw it the first time... anyhow, wanted to share a tip until they get it fixed. E.g. when you type &quot;Sys&quot;, don&#039;t use mouse to scroll, but rather go down with the keyboard arrow - that way it won&#039;t move - the bottom of the screen will be always at the selected item.</description>
		<content:encoded><![CDATA[<p>Yes, I was thinking the same thing when I saw it the first time&#8230; anyhow, wanted to share a tip until they get it fixed. E.g. when you type &#8220;Sys&#8221;, don&#8217;t use mouse to scroll, but rather go down with the keyboard arrow &#8211; that way it won&#8217;t move &#8211; the bottom of the screen will be always at the selected item.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: srobbins</title>
		<link>http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/comment-page-1/#comment-222</link>
		<dc:creator>srobbins</dc:creator>
		<pubDate>Fri, 19 Mar 2010 15:50:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.grumpydev.com/?p=306#comment-222</guid>
		<description>@Peter @Craig - I don&#039;t disagree, for GAC types it should be clever, but there are times when conflicts would occur so it&#039;s not always as simple as it sounds, especially if you are doing it at type level rather than namespace level.</description>
		<content:encoded><![CDATA[<p>@Peter @Craig &#8211; I don&#8217;t disagree, for GAC types it should be clever, but there are times when conflicts would occur so it&#8217;s not always as simple as it sounds, especially if you are doing it at type level rather than namespace level.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Craig Berntson</title>
		<link>http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/comment-page-1/#comment-221</link>
		<dc:creator>Craig Berntson</dc:creator>
		<pubDate>Fri, 19 Mar 2010 15:45:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.grumpydev.com/?p=306#comment-221</guid>
		<description>I&#039;ve always thought the whole idea of adding a reference AND defining the namespace in my code was horribly wrong. Why should I have to do both? VS should be smart enough to go find (in the background) the assembly I need after I specify the namespace, then add it automaticly. If it can&#039;t find it, then it can warn me that the namespace can&#039;t be found. THEN I can bring up the Add References dialog.</description>
		<content:encoded><![CDATA[<p>I&#8217;ve always thought the whole idea of adding a reference AND defining the namespace in my code was horribly wrong. Why should I have to do both? VS should be smart enough to go find (in the background) the assembly I need after I specify the namespace, then add it automaticly. If it can&#8217;t find it, then it can warn me that the namespace can&#8217;t be found. THEN I can bring up the Add References dialog.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter Ritchie</title>
		<link>http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/comment-page-1/#comment-220</link>
		<dc:creator>Peter Ritchie</dc:creator>
		<pubDate>Fri, 19 Mar 2010 15:39:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.grumpydev.com/?p=306#comment-220</guid>
		<description>I think even if we made the add references dialog perfect (which, in itself, is suspect--considering it&#039;s trying to solve multiple problems) it&#039;s simply just exposing implementation details that we don&#039;t really care about.

In terms of the GAC and project in the same solution Visual Studio has enough information to know exactly what assembly to reference.  I shouldn&#039;t need to tell it, before I use a namespace, which assembly to add a reference to.

Resharper effectively does this, I almost never need to use the add reference dialog with resharper.  When I type using highnamespace.lownamespace or use a type that lives in an assembly that VS doesn&#039;t have a reference to , R# figures out where that namespace/type is and suggests adding a particular assembly reference.  I never need to know what assembly I need to add, in these cases.

Sure, assemblies that aren&#039;t in the GAC, I need to manually add references to those; but then I&#039;m just dealing with the Browse or the COM tabs.  I  could make the same argument for most COM binaries.

In terms of usability, Add Reference is basically flawed for types withing assemblies in the GAC or the current solution.  I&#039;d rather see better ways of dealing with those types instead of making the Add Reference dialog any different.</description>
		<content:encoded><![CDATA[<p>I think even if we made the add references dialog perfect (which, in itself, is suspect&#8211;considering it&#8217;s trying to solve multiple problems) it&#8217;s simply just exposing implementation details that we don&#8217;t really care about.</p>
<p>In terms of the GAC and project in the same solution Visual Studio has enough information to know exactly what assembly to reference.  I shouldn&#8217;t need to tell it, before I use a namespace, which assembly to add a reference to.</p>
<p>Resharper effectively does this, I almost never need to use the add reference dialog with resharper.  When I type using highnamespace.lownamespace or use a type that lives in an assembly that VS doesn&#8217;t have a reference to , R# figures out where that namespace/type is and suggests adding a particular assembly reference.  I never need to know what assembly I need to add, in these cases.</p>
<p>Sure, assemblies that aren&#8217;t in the GAC, I need to manually add references to those; but then I&#8217;m just dealing with the Browse or the COM tabs.  I  could make the same argument for most COM binaries.</p>
<p>In terms of usability, Add Reference is basically flawed for types withing assemblies in the GAC or the current solution.  I&#8217;d rather see better ways of dealing with those types instead of making the Add Reference dialog any different.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rory Becker</title>
		<link>http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/comment-page-1/#comment-219</link>
		<dc:creator>Rory Becker</dc:creator>
		<pubDate>Fri, 19 Mar 2010 15:28:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.grumpydev.com/?p=306#comment-219</guid>
		<description>All suggestions for improvements to CR_ QuickAddReference (http://tinyurl.com/quickaddreference) are gratefully receeved here -&gt; http://code.google.com/p/dxcorecommunityplugins/issues/entry :D</description>
		<content:encoded><![CDATA[<p>All suggestions for improvements to CR_ QuickAddReference (<a href="http://tinyurl.com/quickaddreference" rel="nofollow">http://tinyurl.com/quickaddreference</a>) are gratefully receeved here -&gt; <a href="http://code.google.com/p/dxcorecommunityplugins/issues/entry" rel="nofollow">http://code.google.com/p/dxcorecommunityplugins/issues/entry</a> <img src='http://www.grumpydev.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BenAlabaster</title>
		<link>http://www.grumpydev.com/2010/03/19/why-is-add-reference-still-horribly-broken-in-vs2010/comment-page-1/#comment-218</link>
		<dc:creator>BenAlabaster</dc:creator>
		<pubDate>Fri, 19 Mar 2010 15:07:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.grumpydev.com/?p=306#comment-218</guid>
		<description>I&#039;m totally with you on this.  A filter would be a simple solution to appease us at least partially.  

I would probably also add some tricks to get this to load faster... maybe add a version identifier to the GAC, loading the namespace references in the background into a cache when you load up Visual Studio.  Doing this in the background while you&#039;re doing something other than waiting for the list is far less disruptive.  When you go to load the Add References window, it&#039;s merely a case of checking the version id of the GAC to see if it needs to be reloaded because 95% of the time it doesn&#039;t as it doesn&#039;t change during the course of our workflow.  This way the list box can be built far quicker because the enumeration is already complete.

I would still default to the projects tab though, and I would still add your filter entry box to speed up searching.  I think this combination of techniques would provide a markedly more usable interface.

As soon as the Add References window is opened, it should check the version to see if the GAC has been updated, if it has, it should start reloading the cache in the background so that if/when you click the .NET tab the list is already closer to completion than it would have been had it been built only upon clicking the .NET tab.</description>
		<content:encoded><![CDATA[<p>I&#8217;m totally with you on this.  A filter would be a simple solution to appease us at least partially.  </p>
<p>I would probably also add some tricks to get this to load faster&#8230; maybe add a version identifier to the GAC, loading the namespace references in the background into a cache when you load up Visual Studio.  Doing this in the background while you&#8217;re doing something other than waiting for the list is far less disruptive.  When you go to load the Add References window, it&#8217;s merely a case of checking the version id of the GAC to see if it needs to be reloaded because 95% of the time it doesn&#8217;t as it doesn&#8217;t change during the course of our workflow.  This way the list box can be built far quicker because the enumeration is already complete.</p>
<p>I would still default to the projects tab though, and I would still add your filter entry box to speed up searching.  I think this combination of techniques would provide a markedly more usable interface.</p>
<p>As soon as the Add References window is opened, it should check the version to see if the GAC has been updated, if it has, it should start reloading the cache in the background so that if/when you click the .NET tab the list is already closer to completion than it would have been had it been built only upon clicking the .NET tab.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

