|
dev
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Single source code to compile over .NET 1.0, 1.1, 2.0 and CFI have a .NET 1.1 application ready to be ported on .NET 2.0. With some of the features made obsolete in 2.0 and the new recomended methods are not available in .NET 1.1, It leaved me with a question in mind: How come I conditionally compile my application with .NET 1.1 and 2.0 ? An example of obsolete method in 2.0 is: //------------------------------------------------------------------- // .NET 1.1: OK, .NET 2.0: Warning, Property ConfigurationSettings.AppSettings is obsolete ! string szNewKbAddr = System.Configuration.ConfigurationSettings.AppSettings[AppConstant.KEY_NEW_K B_ADDRESS]; // .NET 1.1: Error, .NET 2.0: OK string szNewKbAddr = System.Configuration.ConfigurationManager.AppSettings[AppConstant.KEY_NEW_KB _ADDRESS]; //------------------------------------------------------------------- I have used the code block similar to below, for conditional compilation of code for .NET 1.1 and .NET CF: //------------------------------------------------------------------- #if(_WIN32_WCE) ... ... .NET CF specific code ... ... #else ... ... .NET 1.1 specific code ... ... #endif //------------------------------------------------------------------- Do we have any solution, to either conditionally compile the single source code application on different versions of .NET ( 1.1 and 2.0 ) ? OR- any other solution please ? Thanks ... * (Vipul)() ; Vipul Pathak wrote:
Show quote > Hi everyone, Create nmake files and pass a define, like NET20. In the source, you> > I have a .NET 1.1 application ready to be ported on .NET 2.0. > > With some of the features made obsolete in 2.0 and the new recomended > methods are not available in .NET 1.1, It leaved me with a question > in mind: > > How come I conditionally compile my application with .NET 1.1 and 2.0 > ? > > An example of obsolete method in 2.0 is: > //------------------------------------------------------------------- > // .NET 1.1: OK, .NET 2.0: Warning, Property > ConfigurationSettings.AppSettings is obsolete ! > string szNewKbAddr = > System.Configuration.ConfigurationSettings.AppSettings[AppConstant.KEY > _NEW_K B_ADDRESS]; > > // .NET 1.1: Error, .NET 2.0: OK > string szNewKbAddr = > System.Configuration.ConfigurationManager.AppSettings[AppConstant.KEY_ > NEW_KB _ADDRESS]; > //------------------------------------------------------------------- > > > I have used the code block similar to below, for conditional > compilation of code for .NET 1.1 and .NET CF: > //------------------------------------------------------------------- > #if(_WIN32_WCE) > ... ... .NET CF specific code ... ... > #else > ... ... .NET 1.1 specific code ... ... > #endif > //------------------------------------------------------------------- > > Do we have any solution, to either conditionally compile the single > source code application on different versions of .NET ( 1.1 and 2.0 ) > ? OR- any other solution please ? > > Thanks ... place #if NET20 //... .net 20 specific #endif #if NET11 //... .net 11 specific #endif statements. Example: (makefile_20) SOURCES=AssemblyInfoDotNet20.cs DynamicQueryEngine.cs SqlServerSpecificCreator.cs REFERENCES=SD.LLBLGen.Pro.ORMSupportClasses.NET20.dll REFDIR=..\ORMSupportClasses\DotNET2.0\bin\ all : $(SOURCES) csc /t:library /out:DotNET2.0\bin\SD.LLBLGen.Pro.DQE.SqlServer.NET20.dll /doc:DotNET2.0\bin\SD.LLBLGen.Pro.DQE.S qlServer.NET20.xml /d:TRACE,DOTNET20 /o /lib:$(REFDIR) /r:$(REFERENCES) $(SOURCES) debug : $(SOURCES) csc /t:library /debug /out:DotNET2.0\bin\SD.LLBLGen.Pro.DQE.SqlServer.NET20.dll /d:TRACE,DEBUG,DOTNET20 /lib:$(R EFDIR) /r:$(REFERENCES) $(SOURCES) clean: del /Q DotNET2.0\bin\SD.LLBLGen.Pro.DQE.SqlServer.NET20.* and I start this with a simple .cmd file: mkdir DotNET2.0\bin nmake /nologo /f makefile_20 clean nmake /nologo /f makefile_20 Frans -- ------------------------------------------------------------------------ Lead developer of LLBLGen Pro, the productive O/R mapper for .NET LLBLGen Pro website: http://www.llblgen.com My .NET blog: http://weblogs.asp.net/fbouma Microsoft MVP (C#) ------------------------------------------------------------------------ "Vipul Pathak" <vpathak_[RemoveThisPar***@impetus.co.in> wrote in message Obsolete doesn't mean that they wont work.news:ORmIZxERGHA.4960@TK2MSFTNGP12.phx.gbl... > Hi everyone, > > I have a .NET 1.1 application ready to be ported on .NET 2.0. > > With some of the features made obsolete in 2.0 and the new recomended > methods are not available in .NET 1.1, It leaved me with a question in > mind: > > How come I conditionally compile my application with .NET 1.1 and 2.0 ? I would just use the obsolete methods and ignore the warnings - you are less likely to get version specific bugs that way. |
|||||||||||||||||||||||