I installed ODAC122011_x64.zip from official Oracle site, and I have checked C:\Windows\Microsoft.NET\assembly\GAC_64\Oracle.DataAccess there is only one folder v4.0_4.122.1.0__89b483f429c47342. I also have never installed any other version of ODAC before. When I edit the Web.config file of my web app, I assume the correct parameter to put in, which is same as above folder path, is:
<add assembly="Oracle.DataAccess, Version=4.122.1.0, Culture=neutral, PublicKeyToken=89B483F429C47342"/>
Web app runs normally. But I reallize even when I change the the number version to some other cases like the following, web app still runs normally:
...Version=4.121.1.0...
...Version=4.112.1.0...
...Version=4.112.4.0...
...Version=4.112.111.111...
...Version=1.1.1.1...
...Version=1.1.1.999...
...Version=4.1.1.11111...
...Version=1.255.255.255...
I continue to test more number, then below are the cases which get web app error (Parser error message: file or assembly) at that specific row of changed parameter:
...Version=4.255.255.255...
...Version=4.1.1.111111... (always error when last section has more than 5 digits)
...Version=1.1.1.b...(always error when there is character other than digit)
...Version=5.1.1.1...(always error when first section has number bigger than '4')
I also do some search and found some results said the last install instance of ODAC will override all instances before it. But if it is, why does the config file even need parameters about ODAC after all, to cause the weird behavior like when I change parameter?