lucene.net.dll doesn't work on server(?) - dll

my application works on my local server, but when i put it on our server the lucene classes
throw errors.
do i have to install the DLL on the IIS server?
i'm using visual studio 08, after publishing my website i put it on the server.
does anybody know a solution?
greetings,
tyzak

If you didn't already, you'll need to put the DLL into the website's bin folder.
If you want a more specific answer, please provide more details.

Related

How to set a relative service reference in Visual Studio?

We have a WCF client and we got the wsdl information in a file. How can I enter a relative URL (to the Visual Studio project) instead of an absolute URL? I tried many forms with no luck, the error message is Invalid URI.
Rationale: Not all developers have checked out the project in the same directory. So it is cumbersome to update the service reference.
What we do in similar scenario is having url pointing to localhost.
Therefore each developer has the service configured in their IIS with same url, something like http:\localhost... so config is the same for all.
If this is not an option you might use Slow Cheetah to transfom web.configs (we use it for configs pointing to DEV, QA, Beta, etc.)

WCF Service Deployment in IIS Page cannot be displayed and how does the SVC file work?

Arghhh! I'm getting so frustrated trying to get my head around this WCF service.
So I created a WCF service. It works fine in my laptop where I launch it from Visual Studio 2010. Now I have to deploy it on a Windows Server 2003 machine. So I created a virtual directory on that server's IIS. Next I copied the WCF Service DLL file in the virtual directory. I also created an SVC file which had the following entry:
<%# ServiceHost Language="C#" Service="AMWCF.Service1" %>
Ok first of all, I'm so confused here. Where does this line tell the Server where the DLL file is? It just says "AMWCF.Service"! not file location!
So when I try to launch my webpage, it gives an error "THE PAGE CANNOT BE DISPLAYED". I've tried everything which I can find on the net including:
Reinstalling the ServiceModelReg
Restrarting IIS
Allowing ASP.NET in IIS
Sorry for showing my frustration here. I really really reallllly appreciate any help. Thanks guys. You guys are the best
If you have a class library with your WCF service inside, you need to copy the service DLL into the .\bin folder one level down from your virtual directory. That's where the WCF runtime looks for its service classes.
Also see these resources:
MSDN docs: How to: Host a WCF Service in IIS
endpoint.tv Screencast - Hosting WCF Services in IIS
The WCF Developer Center on MSDN has a "Beginnger's Guide" (available right from the landing page) which has tons of those excellent 5-10 minute screencasts explaining all things WCF to you - highly recommended!
Page cannot be displayed error is coming from IIS.
Add a simple html file and see if IIS can serve that file
Add a simple aspx file and see if IIS can serve that file
Now add .svc file as one of the documents in document list in IIS
Place dll in a bin folder under the virtual directory's physical path
Once you get the asp.net run time errors, it is easy find the answers
for them
If this stuff is new to you, you should use the visual studio deployment features, try right click your web project and click deploy, I think it'll solve your issues, you can even deploy using ftp through this wizard.

Best practices for using app_offline with webdeploy

When I deploy my web site I need to:
Take the site offline.
run sql to update the database.
update the web site.
Put the site back online
I would like to script as much of this as possible without have to go the server and make manual changes.
I am currently using WebDeploy to push my website changes. It works great, and I don't have to know exactly where my site is installed on the server.
So what is the best way to put up/take down the app_offline file? If have seen some solutions where you rename an existing file ( app_offline.htm_ ) using an msbuild script. But it seems like that would require me to know the location of this file.
Is there a way to do this through web_deploy?
Thanks
Yes, you can enable AppOffline during a WebDeploy deployment you can even customize the AppOffline template:
msdeploy.exe -verb:sync -source:iisApp=sourceApp -dest:iisApp=destApp,appOfflineTemplate="offlineTemplate.htm" -enablerule:AppOffline
https://blogs.iis.net/msdeploy/webdeploy-3-5-rtw

Log4Net doesn't write when iis hosting WCF service

Log4Net doesn't write when iis hosting a WCF Service.
it works great when i use the self hosting ( Visual Studio Development Server),
but when i run it using the IIS it doesn't write anything.
i read about this prolem and the conclusion is that
it must be a permission problem, but i don't know how to solve it.
how can i check that i have a permission to write a log file?
where can i change the permission? change AppPool users?
Can you give me some simple steps of how to check if i have a permission problem?
i'm an administrator on my computer.
i'm trying to create the file in the project folder.
The file is a rolling file appender.
thank you.
For my IIS hosted WCF services with HTTP endpoints, logging to App_Data has proven to be the easiest solution.
<file value="App_Data\log.txt"/>
You need to make sure the AD user that the application pool is running under has create/read/modify privileges to the directory where you're outputting your log files. By default, as far as I know, your app-pool user can't create/modify files. So it sounds like you're on the right track.
Edit: Here is an article to help you determine who your app-pool is running as, if needed.
I ran into a similar situation with Enterprise Library not writing to a file using the Logging Application block for an ASP.NET application. This was EntLib 4.1, the eventual solution after trying ACL modifications was to assign the App Pool to run as Network Service and the text logging commenced, not saying this is your solution, or the best one, but its worth a try.
From my experience, in IIS 7+ you have to make sure the application pool has permission to write in the particular log directory. For example,
The problem was solved when i moved the path of the log from "c:\Log.txt" Hard drive to "c:\log\Log.txt" folder in the hard drive.

Programmatically Creating a IIS6 Website/App Pool in Nant

I'm relatively new to Nant, what i'd like to do is have a task that creates a new Website and AppPool in IIS6
is there a way to do this in Nant?
Essentially the task would need to set all the appropriate properties including the correct version of the .net Framework
Ideally i'd also like to check if the site is already present in IIS.
Have you looked at NantContrib? It might provide some better IIS support without having to write your own task (or shelling out).
It has some IIS specific tasks like iisapppool and mkiisdir.
You can do this from the command line using ADSUTIL, you can find more information here:
http://blogs.msdn.com/david.wang/archive/2007/12/12/howto-create-custom-application-pool-by-commandline.aspx
To do this in Nant you can use the exec task.
How are you planning on deploying your application? Do you need this just for local installation? There may be a better solution if you can give us some more details.