What is the proven and easy method to deploy a Web application using DataObjects.Net components on a Web server, which does not have DO4 installed?

Please guide if there is already documentation in the Manual or anywhere else.

We added all references, created a setup and deployed on a Web server, it is not working. It throws up Could not load assembly errors.

The application works only on developer PCs.

We have checked all the binaries are there in the applications directory created by the setup.

Urgent help is appreciated.


asked Nov 01 '10 at 06:32

Akhtar's gravatar image


edited Nov 06 '10 at 05:30

Alex%20Yakunin's gravatar image

Alex Yakunin

Please see my comments below my answer.

(Nov 01 '10 at 09:57) Alex Yakunin Alex%20Yakunin's gravatar image

One Answer:

There are no any special requirements - you should just ensure the content of bin folder of web server's application root is the same as at your development PC.

To check this, try compare the folders after deployment.

Another possible reason (actually, pretty rare now) is that full trust permissions aren't provided for DataObjects.Net assemblies. If you're using some shared hosting, you must consult with hosting provider about this (normally this is mentioned in Q/A).

answered Nov 01 '10 at 09:24

Alex%20Yakunin's gravatar image

Alex Yakunin

edited Nov 01 '10 at 09:24

If this won't help to resolve the issue, please provide stack trace or full ASP.NET error report.

(Nov 01 '10 at 09:25) Alex Yakunin Alex%20Yakunin's gravatar image

I just got the following info from Alex Ilyin:

Active Session is required for this operation. Use Session.Open(...) to open it.

When we debug, we find that the first line of code trying to access DO4 fails to load the Xtensive.Storage.dll.

But "Active Session is required..." is actually thrown by Session.Demand() method - i.e. a method inside Xtensive.Storage.dll. So likely, application can't access some other assembly (e.g. necessary dependency, such as Npgsql.dll or Mono.Security, if you use PostgreSQL).

(Nov 01 '10 at 09:52) Alex Yakunin Alex%20Yakunin's gravatar image

I recommend to turn on Fusion Log to find out the cause. See e.g. this article for details.

(Nov 01 '10 at 09:52) Alex Yakunin Alex%20Yakunin's gravatar image

Another option: compare your bin folder with Samples\Xtensive.Storage.Samples.AspNet\bin. If some libraries are missing, try to copy them from this folder.

(Nov 01 '10 at 09:54) Alex Yakunin Alex%20Yakunin's gravatar image

The author has workaround the issue by installing ODP.NET @ web server. Most likely, it was necessary beacuse all the types in all referenced assemblies are enumerated somwehere in his application. Further investigation will follow.

(Nov 06 '10 at 05:34) Alex Yakunin Alex%20Yakunin's gravatar image
Your answer
Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
toggle preview


Once you sign in you will be able to subscribe for any updates here



Asked: Nov 01 '10 at 06:32

Seen: 3,607 times

Last updated: Nov 06 '10 at 05:35

powered by OSQA