Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Conflicts between different versions of the same assembl
Message
De
17/09/2010 08:46:39
Timothy Bryan
Sharpline Consultants
Conroe, Texas, États-Unis
 
 
À
17/09/2010 08:24:40
Information générale
Forum:
ASP.NET
Catégorie:
The Mere Mortals .NET Framework
Divers
Thread ID:
01480863
Message ID:
01481581
Vues:
15
>>>>>>>>Hi,
>>>>>>>>
>>>>>>>>I've been experimenting with Web, WPF and Winforms User Interfaces for a project. Now that I've added the Winforms project to my solution (which has a WPF and a Web UI project as well) I get this warning:
>>>>>>>>
>>>>>>>>Found conflicts between different versions of the same dependent assembly.
>>>>>>>>
>>>>>>>>How do I work out which ones are conflicting?
>>>>>>>>
>>>>>>>>Maybe this is also related to why my error messages show that I am using .NET 2.0 in the Web project, when I have the projects set to use .NET 3.5?
>>>>>>>
>>>>>>>No ideas from anyone? :(
>>>>>>
>>>>>>I have run into this before. It can be a couple different things and usually takes looking for the extra assembly or reference. Make sure you don't have any extra assemblies laying around in your bin folder. Also the web.config file may have a old reference in there.
>>>>>>Tim
>>>>>
>>>>>
>>>>>How do I know what an "extra assembly" is? Could the old reference be in the app.config as well?
>>>>
>>>>Yes,
>>>>And if you look in the bin folder where your application is stored you would see the *.dll files in there. If there is an older mm dll file in there, just delete it out.
>>>>Tim
>>>
>>>I don't see anything that looks strange.
>>>
>>>1. What do you mean by an "extra assembly"?
>>>
>>>2. What do you mean by an "older mm dll"? Older than what?
>>
>>Frank,
>>
>>You are looking for something like one line referencing mm .net 2.0 and another referencing mm .net 3.5 in any of the config files. Also, in your solution, you want to make sure that you don't have a reference to OakLeaf.MM2008.Interfaces and another to OakLeaf.MM2006.Interfaces or something like that. You can only have one mm .net version referenced in your solution.
>>It just takes slogging through all the different places those references can be. Good luck.
>
>Thanks Linda,
>
>here's what I did: I opened Web.config in my Web UI project and searched for "OakLeaf." and found these items:
>
>
        <add assembly="OakLeaf.MM2008.Framework, Version=3.6.0.0, Culture=neutral, PublicKeyToken=511BD18E16C7F771" />
>        <add assembly="OakLeaf.MM2008.Interfaces, Version=3.6.0.0, Culture=neutral, PublicKeyToken=2312FEFB461DBB0E" />
>        <add assembly="OakLeaf.MM2008.WebForms, Version=3.6.0.0, Culture=neutral, PublicKeyToken=E35DC9DDAD261220" />
>
>        <add tagPrefix="mm" namespace="OakLeaf.MM.Main.Web.UI.WebControls" assembly="OakLeaf.MM2008.WebForms, Version=3.6.0.0, Culture=neutral, PublicKeyToken=e35dc9ddad261220"/>
>
>In my Winforms app.config I found no reference to "OakLeaf." Neither did I find anything in the app.config for my WPF UI project. Nor in the BO project's app.config.
>
>Is this where I should be looking and what I should be looking for?

Frank,

Is this issue is in your windows project? You should be able to tell by building them separately to determine which is reporting the problem. It should also indicate which assembly has two different versions included. For windows applications there isn't anything in the app.config file that would be an issue; only a web.config for web applications.

What you need to be checking for once you know what assembly is involved is make sure you have the right one under the references node in your solution explorer for that project. Also compare to make sure any dependant projects such as the business object project is using the same one. In other words, if you expand the references node in the solution explorer and click (to highlight) one of the MM references, then look in the properties window at the version number. These need to be the correct one for your installed product and the same.

Also, you need to open windows explorer and navigate to your project folder, expand the bin folder, and the debug and release folder and see if there are files in there (*.dll) files that are from earlier versions of mm. If they are in there, just delete them. You should be able to delete anything from those directories under the bin folder because they would be re-added when the project is built again.

The key here is knowing which project and which assembly is the one that is being tagged as an issue. By the way, if you have WPF, Win, And Web projects all in the same solution, which is the startup project? Typically I create a separate solution for different UI's. So I might have a solution for Web that has the web UI plus the business objects, and another solution that is WPF and also includes the same business objects, and so forth. That way the startup project can be set to what ever UI and I don't have any dependencies between web and win or wpf projects.
Tim
Timothy Bryan
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform