Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VS build on fresh clone breaks demo web site #384

Open
atifaziz opened this issue Aug 25, 2015 · 6 comments
Open

VS build on fresh clone breaks demo web site #384

atifaziz opened this issue Aug 25, 2015 · 6 comments

Comments

@atifaziz
Copy link
Member

(Carried forward from issue #373)

What steps will reproduce the problem?

  1. Clone repo (ART revision 0d650a436f7f)
  2. Open Elmah.sln in VS 2013
  3. Build the solution using NETFX 3.5 Debug configuration (have not tried others)
  4. Once build completes, choose View in Browser from the context menu of the Demo web site project node
  5. Once the demo home page opens in the browser (if an error occurs that App_Data does not exist, create the directory and retry), go to http://localhost:51296/elmah.axd

What is the expected output?

Expect to see an empty error log page.

What do you see instead?

The log page produces the following error:

Unable to load DLL 'SQLite.Interop.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

Additional Information

If you take another fresh clone (or clean the existing one with hg purge --all) and
use build.cmd then the demo site works flawlessly. It seems as if the restore from
within VS does not honour package restore for Web Site projects.

Could you take a look at this? Thanks!


Originally reported on Google Code with ID 384

Reported by @atifaziz on 2015-03-04 08:32:43

@atifaziz
Copy link
Member Author

Issue #383 has been merged into this issue.


Reported by @atifaziz on 2015-03-04 08:42:15

@atifaziz
Copy link
Member Author

Reported by @JamesDriscoll on 2015-03-04 09:49:30

  • Status changed: Accepted

@atifaziz
Copy link
Member Author

Fixed in https://code.google.com/r/jamesdriscoll71-demo-project-issues


Reported by @JamesDriscoll on 2015-03-10 00:05:41

  • Status changed: Fixed

@atifaziz
Copy link
Member Author

Changing Status to Started as fix has not yet been pulled into the main repo.


Reported by @atifaziz on 2015-03-10 06:10:57

  • Status changed: Started

@atifaziz
Copy link
Member Author

Reported by @atifaziz on 2015-03-12 17:49:46

@atifaziz
Copy link
Member Author

Looks like this may be by-design after all. :S

First of all, my comparison was not apples to apples. The default configuration when opening up in VS is .NET 3.5 Debug. If the demo web is built and run, it fails. Building from the command line via build.cmd works because it builds all configurations. Doing the same from VS (i.e. Build ➡️ Batch Build and selecting all configurations) on fresh clone does not fail the demo web.

The SQLite.Interop.dll is missing when building for .NET 3.5 because the Elmah.SQLite project's post-build event only copies the interop DLL when targeting .NET 4.5. When building all configurations, the .NET 4.5 configurations are the last ones and therefore running the demo web right after succeeds. If one removes if from the post-build event to have the interop DLL copied in all configurations then another problem occurs: the AntiXss dependency is not copied over by VS except when targeting .NET 4.5. I haven't quite understood why.

In the current state of affairs, the demo web site is only designed to work with .NET Framework 4.5 and that's acceptable for alpha and beta releases. I wonder if there's a way to set the default configuration in VS?


Reported by @atifaziz on 2015-03-12 18:37:57

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants