Link to home
Start Free TrialLog in
Avatar of Smoerble
SmoerbleFlag for Germany

asked on

How to access c# codes from "higher" folder?

Hi all.

I have a project which is running in a sub folder of the server (I had to do this as I have to add a subfolder, when I start a new project in Visual Studio).
So my current project looks like this:

http://www.mydomain.com/
http://www.mydomain.com/cs/
http://www.mydomain.com/cs/forum/forum.aspx
http://www.mydomain.com/cs/forum/helperForum.cs

helperForum.cs has only the namespace "cs", not "cs.forum".

Now I need to have an aspx here:
http://www.mydomain.com/a/whatever.aspx

This "whatever.aspx" has to call the helperForum . If I try it like this:

<%= cs.helperForum.getSomething() %>

i get the error:
" The type or namespace name 'cs' could not be found..."

What do I have to do, to be able to access all codes from my "cs" project (not CounterStrike! ;)) in any other location on my server (even root!).

Thank you.
Avatar of Thalox
Thalox


Hi,

by "project" do you mean your project (solution in vs) or real vs- project?

if this is only one project then there should be no problem accessing other cs files (in this project)

if there are more projects you will have to include references to them in your current project.


and another thing:
is "cs" your toplevel-namespace? If you want to call something in your aspx - page, you need to specify the whole namespace. the aspx-page ignores any "using" declarations in the codebehind.


hope this helps,

Thalox
Avatar of Smoerble

ASKER

Ok, I explain more detailed:

I have a webserver running since some years.
Now I added some c# code. For this, I installed VisualStudio and started a new project in VS. When you do this,. you have to give it a folder name and you can't give it the root directly.
So I named mine "cs".

Every class I add to the project contains these lines:
---
using System;
...
namespace cs
{
---

What works fine:
http://www.mydomain.com/cs/forum/forum.aspx 
calls a helper function from
http://www.mydomain.com/cs/forum/helperForum.cs
by sinply using helperForum.whatever(). No issues here.

What does NOT work:
http://www.mydomain.com/a/
should call helperForum.whatever(). This does not work, even if I use
cs.helperForum.whatever()

Oh, important:
the cs.dll and cs.pdb files are located here:
http://www.mydomain.com/bin/

Did this clearify my problem?

It does not matter where the "original" cs.dll is located.
vs will copy all needed dlls in the right directory.

where does your "a" come from?
is this a new project?

as I understand you have the following:

project "cs" with helperfunctions
project "a" which needs to call a helper function

is this right?
"a" is not a VS project, it's just a folder with a plain *.aspx in it.
But yes, I want to access my "/cs"-helper functions form folder "/a".
hm, nice problem ;)

the root of your app is http://www.mydomain.com/cs, right?
or http://www.mydomain.com ?
where is your web.config?

and if it is /cs, how did you create the a folder and put the file in it?


are you able to access  your cs - functions  from the codebehind in folder a?
the root of my app is /cs .
I wanted it to be "/" (root) but I could not figure out how to explain VisualStudio what I want ;).

web.config sits in "/" (root).

I could not get it working to access any of my codes in "/cs/" from "/a/". Exactly this is what I need :).
SOLUTION
Avatar of Thalox
Thalox

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I just learned, that there is "some way" to tell a project in VS to use sources from another project.
Did not know this, so I have to learn how to do this ;)
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ok, after a lot of tests ;) I would like to go with the following approach:

make all code somewhere below
d:\www\cs\
so it would be something like:
d:\www\cs\forum
d:\www\cs\cms
etc.

For this I want to change my localhost from d:\www\ to d:\www\cs\

So I go to VisualStudio and start a new project and call it "www".
When creating/opening, it stops with the following error:
Unable to open Web project "www". The Web "www" located on the server "http://localhost/" does not exist.

So... to finally solve this issue, how do I make a new project directly on my localhost folder instead of localhost/anyProjectName ?
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial