whats a good way to be able to keep 2 connection strings to SQL server in the web .comfig and have the app pick the correct one when its in the prod and dev servers?
i think i saw once some cool ways to keep variables like app settings holding two sets of values just like i am trying to do with my connection string to SQL... but i diont remmeber where i saw it..
my dev and prod servers vary by the port they use. so i have mysite.com and mysite.com:81
My web.config is set up so that I don't have to change anything between deploy from UAT and Production. I can determine what machine it is running on and then programatically pick the correct connection string etc from the web.config based on the name.
Now we are adding a call to a web service which now causes us to have to make a change at deploy time. We set a "Region" flag in the web.config and then in coded an IF statement to call the appropriate webservice based on the flag so all we'd have to change is the "T" to a "P" when moving to production. But then hardcoding a web service in the application is not what we want to do. Nor do we want to change the web service address in the web.config.
Is there any way we can do something like the following to be able to not have to change the web.config at deploy?
It would be something like:
1. Grab current Machine name
2. Look in web.config for corresponding machine name web service reference (like we do for connection strings etc)
in MyWeb there are all the aspx page and some entites datamodel, in MyApp there are the class with function like "getter data from DB" and there is a entity data model.
afeter the deploy, I have only the web.config and the connection string for the entity datamodel....itīs run ok, read/write the data on the DB.
The problem is with MyApp.....after the deploy it is a dll file and I donīt have the app.config and the entity inside it donīt run, not read/write nothing on the DB.
There arenīt error or messager but not read/write the data in the MyApp project.
all run on the iis 7
now...the question is:
I lose the connection string (in app.config) after the deploy?
Can I put a entity in the MyWeb and read it in another project (myApp)?
I have an ASP.Net web site (ASPX and ASMX pages) with a single web.config file. We have a development version and a production version. Over time, the web.config files for development and production have diverged substantially. What is the best practice for keeping both versions of web.config in source control (we use Tortoise SVN but I don't think that matters)?
It seems like I could add the production web.config file with a name like "web.config.prod", and then when we turnover all the files we would just add the step of deleting the existing web.config and renaming web.config.prod to web.config. This seems hackish, although I'm sure it would work. Is there not some mechanism for dealing with this built in to Visual Studio? It seems like this would be a common issue, but I haven't found any questions (with answers) about this.
I am having an issue with caching of a web application while deployment to a webserver. the application require full trust level to be assigned but i am having partial trust level. How can i handle it. I am using Microsoft enterprise lib caching. site is displaying an error if FullTrust used nad for medium code doesn't work.
this is the error message on my website
"The current build operation (build key Build Key[Microsoft.Practices.EnterpriseLibrary.Logging.LogWriter, null]) failed:
Request for the permission of type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed. (Strategy type Microsoft.Practices.EnterpriseLibrary.Common.Configuration.ObjectBuilder.ConfiguredObjectStrategy, index 2)"
The other day I came across an alternative way of accessing web.config configuration in some article. It allowed to:provide path to web.config file modify web.config configuration at runtime like:config.MySetting = "new value";load web.config from another web application in the same IIS (I'm not sure about it)work with configuration using class instance instead of static ConfigurationManager class
i am having a condition in which i have to pass the query string in the URL, the page which i am calling contains the Site map path control.
But as i pass the query string with the URL, the site map path is not working.
how can i handle query string in site mat path control as i have web.sitemap file containing the nodes
Edited : my url is like http://localhost:1400/RevenueAccounting/Auth/BillingAdministration/RackHireDueDetails.aspx?t=1&LiableRoad=BNSF
having 2 varables in query string, the first variable will remain same always but the value of second variable changes the actual error is, when i am using just the URL
I have a db connection string 'ApplicationServices' defined in the connectionString section of web.config and 3 Entity Framework connection strings which have the provider connection string attribute with the same connection string as the one in 'ApplicationServices'. Is there a way to reference connectionString in 'ApplicationServices' for the provider connection string attribute of the EF connection string in the web.config, rather than providing the connection string all over again?
My company is interested in using C# to build their intranet website. I am searching around to find out what software we might need and how much they cost.his website http://www.asp.net/downloads/ mentioned the following software is free. anyone know if these are free for development only or both dev and prod?
I am using PageMethods to send a few parameters to a webmethod in my codebehind. The method runs a stored procedure and uses the results to build a string that I am returning from the method.
Everything works fine until I try to include too many records in my results..
Once the results I am trying to return hit about 70K, the pagemethod times out even though it is taking about 1 second to process the results.
Is there a buffer limit or limit on the size or results returned from a pagemethod and if so, where can this be set or changed?
Is there a setting in the web.config somewhere to handle pagemethod buffer size?
I have a requirement to automate the testing of .net application that generates some output files in pdf or html based on account number. How can I automate it to compare the results from DEV environment and the production environment? What is the best way to do so?
I have a simple datatable with 2 fields, one a primary key which I will call PK and other which I will call COL1. I have used the dataset designer to generate update/insert/delete methods on the tableadapter. On my development system two update methods are generated wit hthe follow signatures:
Update(PK as System.String, COL1 as System.Bool, Original_PK as System.String) Update(COL1 as System.Bool, Original_PK as System.String)
On the production system, however, the latter signature is not generated. What is more preplexing is that prior to today, production operated similar to test. Obviously somethign changed, but I have been unable to identify what.
Unfortunately the method being used now is the latter. Now I can create my own method with a similar signature, but this problem isn't unique to this datatable/tableadapter. I am very hesitent to make thsi change throughout the application, and even more so in touching the several other applications which I fear may have similar issues (though those rely less on generated udpates).
I am writing a program that uses a .dotx template and does a merge of data in an aspx page. The program works perfect on my Dev workstation locally but when I deploy it to a test IIS server, it fails on the second line below giving me an Object Reference error.
I ran into problems earlier because the Word Com object was not on the IIS server so I loaded Word onto the server and set permission in DCom and got past that problem. But now I get this error on the line that starts with wRange = . As I said, the program works perfectly locally in debug mode.
Microsoft.Office.Interop.Word.DocumentClass System.NullReferenceException: Object reference not set to an instance of an object
I added a database to my project. When I did so an app.config file was added to my project. (Yes I know I have dangerous info in the connection string. I shall change that but for now I am messing around with test stuff.)
I did a google search on how to get the connection string value and found. string sConn = ConfigurationSettings.AppSettings["ConnectionString"]; I am getting a warning that this is obsolete. It has been replaced by ConfigurationManager.AppSettings. Ok Fine. According to the docs, it is also in System.Confiuguration which I already have a using statement for above. But when I attempt to use it, it is not part of the assembly.
In development I installed "ODAC Entity Framework and LINQ Beta (11.2.0.2.30)" so that we could have a 32 bit version of Oracle.DataAccess for ODP.Net. In Visual Studio 2010 (on Windows Server 2008 R2) I made a reference to:
C:Oracleodp.netin4Oracle.DataAccess.dll.This adds: <add assembly="Oracle.DataAccess, Version=4.112.2.30, Culture=neutral, PublicKeyToken=89B483F429C47342" /> to the assembly in the web.config.
We set the AppPool to Enable 32 bit applications and everything works great. For anyone who doesn't know the story here, we do this because Visual Studio 2010 runs in 32 bit so you need the 32 bit ODAC/ODP.net components to get a development environment running. I then publish the files and move to a 64 bit machine.
I downloaded the "ODAC112021Xcopy_x64.zip" Then ran: install.bat odp.net4 c:oracle odac and I can see the Oracle.DataAccess.dll file at: C:Oracleodp.netin4Oracle.DataAccess.dll. Then added c:oracle;c:oraclein;c:oraclein4 to the System Path.
At this point I would think I just replace the version and PulbicKeyToken in: <add assembly="Oracle.DataAccess, Version=4.112.2.30, Culture=neutral, PublicKeyToken=89B483F429C47342" /> on production to the versioin installed on prod. So first thing I do is just remove that line on production to see what error I will get. And I still get the same error:
System.IO.FileLoadException: Could not load file or assembly 'Oracle.DataAccess, Version=4.112.2.30, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Actually this is if I move the new dll into the applicaitons bin directory. If I remove the dll from the directory I get: Could not load file or assembly 'Oracle.DataAccess, Version=4.112.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The system cannot find the file specified.
So I put the line back in.
I right click on on the new Oracle.DataAccess.dll and click properties. In the details tab I see verion is 4.112.2.0. That makes sense. The 64 bit XCopy version is an earlier build then the 32 bit Beta that comes with Entity Framework and LINQ(Version=4.112.2.30).
So on production I change the Version attribute to: 4.112.2.0. But now I get the same error: System.IO.FileLoadException: Could not load file or assembly 'Oracle.DataAccess, Version=4.112.2.30, Culture=neutral, PublicKeyToken=89b483f429c47342' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) (This is with the new dll back in the web app's bin directory as is the rest of the thread).
It's still looking for the same version of the assembly. Why is it doing that? The web.config has a connection string with the ODP.Net provider type (Oracle.DataAccess.Client). Which would take from the assembly reference. It should not care what the version number is. Could there be something in code somewhere that is specifically looking for the old dev box version? Just what is the way to make it use the new assembly?
I would think the system would just know where to find the new dll. Just as in development the add reference dialog knew that the dll was in c:oracle... rather then c:program files(x86)... like out-of-the-box Microsoft assemblies.
Kindly let me know why my appln redirects me to Session TimeOut page on a simple postback. This doesnot happen on my local pc but happens only on prod. Here is the code I m using on my PageBase.cs 's Init method
I have been preparing for a conversion of an old application to an ASP.NET webapplication at beginning of the year. Generally, the development version of the webapp will also be the webapp that goes into production. We here make "clones" of the database server, assign new name, etc, which is then used for development, training, and so on without any threat of changing data on the real db (sql server 2005). I know it is possible to have more then one connection string in the web.config. My question centers around if there is a simple method for allow multiple connection strings and pick the one that is to be used for dev, production, training, and so on? I originally thought about constructing some type of admin form that the connection string can be selected from.