ConfigConsole.vsix for VS2012

Topics: General discussion, Logging Application Block
Jan 4, 2013 at 1:06 PM

Hi,

I am doing my first steps with EntLib, Logging Block. Watching a pluralsight webcast they show how to use configuration editor wich looks really great!

I now installed the logging block using NuGet and downloaded "Microsoft.Practices.EnterpriseLibrary.ConfigConsole.vsix" from codeplex, but it only installed into my VS2010, not into VS2012.

What must I do to have the configuration editor available in VS2012?

Thanks for hints and help!

Regards
Rainer

Editor
Jan 5, 2013 at 4:01 AM

The bad news is that there is no official release for VS2012.  

The good news is that you can download a modified version of the ConfigConsole that works with VS2012 here.  You can also read the original thread that discusses this: http://entlib.codeplex.com/discussions/395061.

--
Randy Levy
entlib.support@live.com
Enterprise Library support engineer
Support How-to 

Jan 6, 2013 at 11:24 AM

Hi Randy,

thanks for your help and the links!
For the moment I am now using the stand alone editor which seems to work ok.

Regards
Rainer

Editor
Jan 6, 2013 at 3:19 PM

There is no issue with the config tool (integrated or standalone) it is just the the ConfigConsole does not target VS2012 so it does not install for VS2012.  The modified version just changes the product definition to also include VS2012.

--
Randy Levy
entlib.support@live.com
Enterprise Library support engineer
Support How-to 

Jan 7, 2013 at 2:13 PM

Hi Randy,

I downloaded and installed the VS2012.vsix and it works fine.
thanks once more!

Regards
Rainer

Editor
Feb 5, 2013 at 1:25 AM
Edited Feb 7, 2013 at 4:15 AM
The official release of EnterpriseLibrary.config now targets VS2012. It can be downloaded at http://visualstudiogallery.msdn.microsoft.com/029292f0-6e66-424f-8381-3454c8222f9a.

~~
Randy Levy
entlib.support@live.com
Enterprise Library support engineer
Support How-to
Apr 3, 2013 at 12:16 PM
Hi Randy,
I have Visual Studio 2010 ultimate and Visual studio 2012 for web installed on my windows 7 box. I have tried the official release and your patched version, unfortunately both do not want to install into Visual Studio express 2012 for Web version. It seems happy with the 2010 and installs there fine. Is this just a restriction of express 2012 for web? What are my workarounds? Thanks.
Editor
Apr 3, 2013 at 3:47 PM
It's a restriction of the extension. For VS2012 the supported versions are Ultimate, Premium, and Pro.

~~
Randy Levy
entlib.support@live.com
Enterprise Library support engineer
Support How-to
Apr 3, 2013 at 4:05 PM
Thanks for the reply Randy.
I downloaded the vxix file from the official website and renamed it to .zip. Extracted it and I now see some binaries, which when I run does open the config editor. I then open my web.config file from my VS2012 web project, however, the block I want to edit namely the "Transient Fault Handling" block (wow that is a name right;) and the default settings for SQL azure connections do not show up in the menus. Can you think of some way of telling the config editor what I am trying to do? Or is there a better workaround? Thanks again.
Editor
Apr 4, 2013 at 4:04 AM
Edited Apr 4, 2013 at 4:05 AM
If you are not able to use VS2012 configuration extension (EnterpriseLibrary.config) then the next best way would be to use the stand alone configuration tool.

To do this with the Transient Fault Handling Block:

  • Install Enterprise Library. The configuration tool will also be installed. The default directory is C:\Program Files (x86)\Microsoft Enterprise Library 5.0\Bin.
  • Copy the following assemblies into the install directory in the previous step:
Microsoft.Practices.EnterpriseLibrary.WindowsAzure.TransientFaultHandling.Configuration.dll
Microsoft.Practices.EnterpriseLibrary.WindowsAzure.TransientFaultHandling.dll
Microsoft.Practices.TransientFaultHandling.Core.dll
Now when running the .NET 4 version of the configuration tool (EntLibConfig.NET4.exe or EntLibConfig.NET4-32.exe) the option
Blocks -> Add Transient Fault Handling Settings should appear.

~~
Randy Levy
entlib.support@live.com
Enterprise Library support engineer
Support How-to
Apr 4, 2013 at 10:19 AM
Thanks for the help with this Randy.

Almost there...

1.) I installed Enterprise Library 5.0 from here: http://www.microsoft.com/en-us/download/details.aspx?id=15104 Please let me know if that is incorrect.
2.) Unfortunately it does not contain the TransientFaultHandling dlls so I NuGet into my project the following NuGet projects

-Enterprise Library 5.0 Transient Fault handling Application Block
-Transient Fault handling Framework for SQL Azure, Windows Azure Storage, Serv... (created by Windows Azure CAT)

Now looking in my project's BIN folder and packages directories I can find

Microsoft.Practices.EnterpriseLibrary.WindowsAzure.TransientFaultHandling.dll
Microsoft.Practices.TransientFaultHandling.Core.dll

BUT the following does not to have been included.
Microsoft.Practices.EnterpriseLibrary.WindowsAzure.TransientFaultHandling.Configuration.dll

Where I can find the dll? And why would it be missing?

Thanks again!
A-
Editor
Apr 5, 2013 at 4:23 AM
The reason why the Microsoft.Practices.EnterpriseLibrary.WindowsAzure.TransientFaultHandling.Configuration.dll is not in the bin folder is that it is not required to run the application; it is used for design time configuration.

If you downloaded the block via Nuget then you should find the configuration assembly in the packages\EnterpriseLibrary.WindowsAzure.TransientFaultHandling.5.1.1212.0\DesignTime\ directory (although it will depend on the exact version downloaded).

~~
Randy Levy
entlib.support@live.com
Enterprise Library support engineer
Support How-to
Apr 5, 2013 at 9:38 AM
Randy,

Thanks for the directory. Found the

\Visual Studio 2010\Projects\MvcApplication1\packages\EnterpriseLibrary.WindowsAzure.TransientFaultHandling.5.1.1212.0\DesignTime\Microsoft.Practices.EnterpriseLibrary.WindowsAzure.TransientFaultHandling.Configuration.dll

copied all three

Microsoft.Practices.EnterpriseLibrary.WindowsAzure.TransientFaultHandling.dll
Microsoft.Practices.TransientFaultHandling.Core.dll
Microsoft.Practices.EnterpriseLibrary.WindowsAzure.TransientFaultHandling.Configuration.dll


Now when running the .NET 4 version of the configuration tool (EntLibConfig.NET4.exe or EntLibConfig.NET4-32.exe) the option
Blocks -> Add Transient Fault Handling Settings

Is NOT there???

Arghhh. Any suggestions?
Editor
Apr 7, 2013 at 6:16 AM
I think you will need to use the latest version of Enterprise Library: Microsoft Enterprise Library 5.0 Optional Update 1. The best approach would be to uninstall the current installation and install the latest version. If you do that and copy the assemblies then it should work.

~~
Randy Levy
entlib.support@live.com
Enterprise Library support engineer
Support How-to
Apr 7, 2013 at 1:58 PM
Edited Apr 7, 2013 at 1:59 PM
Randy,
Put your hand over your shoulder and give yourself a pat on the back. Well done my friend. That seems to have done it. Thanks!
Nov 6, 2013 at 2:50 PM
hi folks

I'm going nuts with this same kind of setup thing. (everything installs as expected, this is a missing .DLL related issue)

I hate posting multiple times, but I need to get this resolved ASAP (since this isn't a "learning" experience for me (we go all the way back to v2); our core data access layer for our products references to the Enterprise Library, and we want to have the latest in this round of product updates).

Here's the posting: https://entlib.codeplex.com/discussions/466277

Environment: Windows 8 Pro (up to date), Visual Studio 2012 Premium (up to date), Enterprise Library v6.0.1304.0

Thanks
Rob
Nov 6, 2013 at 6:22 PM
ok, here's the real issue...

the nuget fetch actually fails because of a file directory and file length too long issue (destination path too long).

( the message looks very similar to this: http://www.thewindowsclub.com/file-names-too-long-for-destination-folder or
http://answers.microsoft.com/en-us/windows/forum/windows_8-files/windows-8-file-name-too-long-error/db84824e-fd43-4afa-a3aa-31cd69fd738e )

hmmm, nutty as a fruit cake (does the same thing even with windows explorer copy-n-paste....)

rob
Nov 7, 2013 at 11:56 AM
at first I thought this was a nuget issue (but seeing that the .dll and .xml ended up in a user appdata location), this told me otherwise

this is a very serious Windows 8 Pro bug (not being able to handle file names like what is below).

we will have to hand rename .DLLs and .XMLs for:

Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.WindowsAzure.Storage.*

even copies in the command window fail (with the filename being too long), i.e.:

copy "C:\Microsoft Enterprise Library 6\DLLs\Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.WindowsAzure.Storage.dll"
"C:\Microsoft Enterprise Library 6\EnterpriseLibrary6-aExpenseRI-source\aExpense\EL-V6\packages\EnterpriseLibrary.TransientFaultHandling.WindowsAzure.Storage.6.0.1304.1\lib\NET45*.*"

Rob K
Nov 7, 2013 at 12:06 PM
(feel like I'm loosing my mind with MS....)

I renamed all instances of Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.WindowsAzure.Storage. to x.

however, there are package failures for each project in the solution that had assembly references (3 of them) to Microsoft.Practices.EnterpriseLibrary.TransientFaultHandling.WindowsAzure.Storage.dll

they come in pairs (3 of them for aExpense.FunctionalTests, aExpense.Tests, aExpense):

Error 6 The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters. aExpense.FunctionalTests

Error 7 The command ""C:\Microsoft Enterprise Library 6\EnterpriseLibrary6-aExpenseRI-source\aExpense\EL-V6.nuget\nuget.exe" install "C:\Microsoft Enterprise Library 6\EnterpriseLibrary6-aExpenseRI-source\aExpense\EL-V6\aExpense.Tests\packages.config" -source "" -o "C:\Microsoft Enterprise Library 6\EnterpriseLibrary6-aExpenseRI-source\aExpense\EL-V6\packages"" exited with code 1. aExpense.FunctionalTests

what a GD mess...

Rob K
Nov 7, 2013 at 12:45 PM
final fix was to create a new directory (C:\MSEntLib6 <- which changes our naming pattern), pull everything back down and rebuild (this was a short enough directory name that Win 8 Pro, nuget and VS 2012 had no issues)...

mouth still open trying to get a handle on how something that should have taken 5 minutes, ate up 3 hours...

rob k
Nov 8, 2013 at 2:36 PM
as a final note....

as mentioned changing this did work.

however, one simple test and point I'd like to make, copy the file directory and file name mentioned throughout the dialog and paste them into notepad.

you'll see that neither the directory nor the filename length is anywhere near the mentioned limitation. here's the bigger of the two, just as a reference (so you can copy into NotePad and look for yourself...:

C:\Microsoft Enterprise Library 6\EnterpriseLibrary6-aExpenseRI-source\aExpense\EL-V6\packages\EnterpriseLibrary.TransientFaultHandling.WindowsAzure.Storage.6.0.1304.1\lib\NET45\
123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890
     *         *         *         *         *         *         *         *         *         *         *         *         *         *         *         *         *         *
Pretty much I'm calling this a bug in Windows 8 Pro and/or the lower level 32-bit API which isn't doing it's job.

Respectfully
Rob