MVC :: Creating Solution With Multiple And Sharing Namespaces Across Projects
May 25, 2010
If MVC application has multiple projects (The solution may grow large in future). These projects may share controllers such as application controller accouts controller and there may also be a situation in which namespace of one project is shared by other project. What is the best way of implementing such solution. One approach may be to use areas.
I am looking for general direction on the best practice here. I have a class that I want to share between two different forms in two projects that are associated. The two forms are in seperate projects but both projects load together as I have added the second project to the first. I also have a class that I want to share between these two projects which will cause me to add another project to this solution with will mean I will have three projects in my solution. My question is how do I best share this class?
I believe the only way to do this is to add the class in the reference in both of the form projects?... Is this correct ? I'd really like to just reference the class and inherit it in the source code without adding it as a reference but I am feeling that I can't do that. I am obviously pressed for time and working on other projects and a I am a experienced coder with only about 1 year of C# experience...
I am using VS2005 and I have a solution file (.SLN) which has 8 projects. I moved the solution file to a different path on a shared folder to have better organization of my projects and to allow access to the solution/projects from any computer on the network. After that, I edited the .SLN file so that the path of the projects in the solution file are correct (all on shared folders).
After that, I opened the .SLN and everything seemd to be working fine. However, I notcied that the "Start Options" of the website part of the solution file is missing the "Start Options", ie, the Start Options are reset to default values. I think also, but not sure, some other settings of the Solution/Projects have been reset.
Questions:
1. Where the Web Site "Start Options" are stored ?
2. How I can maintain the Start Options and similar settings if the .SLN file is moved or opened from different computers on the network ?
3. I am not using an team development tools, only plain (vanilla) VS 2005 Prof. Edition. Is it possible to have 2 or more developers work on the same solution/projects (shared on the network), if both developers will coordinate manually simultanous access to the porject files/resources/source code ?
I am trying to add multiple CSS files across several projects and have added them as a "link" but when I build my solution it does not copy the files. Is there any way to share a bunch of CSS files across several projects?
I am attempting to setup Config Transforms on my project that I migrated to VS 2010. The web project works just fine, but I have a WCF Host project that I seem to be unable to add transforms.
I am currently extending the NopCommerce solution for a client and have some general questions about workflow, since this is a relatively large solution for me (50+ projects).
I want to add some classes to the DAL, BLL, and so forth.
What would be the recommended process for this workflow? For example, I created a class in the DAL -> ran build. Then I created a test.aspx page in the main project which instantiates this class -> ran build; however, adding just one line of code causes the solution to rebuild all other projects such as payment modules, which makes the process tedious.
Am I approaching this in the correct manner? I have read about: creating a seperate solution with relevant projects; is this the recommended approach?
I am working on a web project in Visual Studio 2010 with ASP.NET 4.0/C# 4.0.My requirement is to remove all the namespace referenced from codebehind in C# and put it in web.config.
As per the link, [URL], from MSDN I added the namspaces to web.config.
I have 2 projects, where they both can upload attachments into a directory.
The problem is how do you get the projects to be able to access each others attachments or even save these attachments in the same folder...
At the moment my ProjectA saves uploads into its "uploads" folder... But when you are running ProjectB it doesnt have the same uploads folder (if that makes sense)
Is there a way to share user controls between various projects ?
I have created user controls like login control, menu control, header control, lost password control and etc and they are all connected to sql database for data.
I would like to share these between various web site projects, it means I have same functionality and the only modifications I can do is within CSS styles.
Do I need to copy modules or is there a way to keep them as shared classes/modules and call what I need every time I need it?
Is there a way to share class files across web site projects without actually making a physical copy of the file to the App_Code folder of each project?
I've seen some teams that start breaking into multiple projects from the beginning and others build behemoth single projects. The large project teams say that one massive project is easier to maintain than multiple smaller projects.
I'm trying to share settings between two projects: a console app and a WPF app. The WPF app only exists to view and change those settings.
So in my console app, I wrote the following class...
[Code]....
My WPF app has a reference to the console application, so it can access the members of this Settings class.
So you'd think that if I use the WPF app to change one of these settings, then the next time I run the console app that changed setting would be available, but that is not the case. I'll change the masUserID setting from Bill to Ted, for example, but when I launch the console app it shows the setting is still Bill. If I run the WPF app, it's set to Ted.
I'm totally new to the Microsoft dev scene so please go easy :)Currently, I have a solution that contains two projects (ASP.net websites, FWIW). If I create a class in Project1, how do I expose it to Project2? Is it automatically available to Project2 because they are in the same solution? Or do I need to do something special to make the connection?
I have a project where I need different versions of the same site.
I need to accomplish this by having different versions of the same resource files.
I would like to store the different versions of the same resource files in seperate projects in the same solution. Then choose which project of resource files to use when I publish or compile.
I've been searching the net everywhere and my deadline is coming up.
I have an asp.net solution in which there are two web application projects (client website and admin website) and also a class liabrary project in the same solution . In the live production server, the admin web app is within the client app (eg: client site= [URL] and admin site=[URL]). A class (with static variables) in class liabrary is userd to cache data. My problem is that i cannot get the changes to the static cache by one web project reflected to the other (becoz, i think, they seem to load in seperate appdomains).
Initially, in my solution I had one project, and had set up all that is required for asp.net security, and that includes users and roles and access rules, etc. All of that was and still is working fine.
Now I added another project to my solution, and my first project points to pages in the second project.
The problem is that it seems like the users and roles are not being transferred accross projects. Not sure if I am explaining my problem correctly...if not, feel free to ask...
Its my first time trying to manage users and roles accross projects within a solution.
I have a project at work where I need different versions of the same site.
I need to accomplish this by having different versions of the same resource files.
I would like to store the different versions of the same resource files in seperate projects in the same solution. Then choose which project of resource files to use when I publish or compile.
I've been searching the net everywhere and my deadline is coming up.
I'm implementing the session sharing structure from this link for an ASP classic site to begin the gradual conversion process to ASP.NET. I'm trying to extend the cookie expiration time so that users do not get signed out of the site when the session expires. At the place where the cookie is created in SessionPage.cs I've added the line in the CreateNewSessionCookie() method: cookie.Expires = DateTime.Now.AddDays(14);
Now this works fine, however, it only works if the user first visits an ASP.NET page, and then visits the ASP classic pages. It doesn't work if visiting an ASP classic page first (looking at the cookie through firefox confirms that different expiration values are given based on if I visit an ASP or ASP.NET page first.) I'm still a bit fuzzy on the mechanics behind this implementation as I don't have a complete understanding of session and cookie handling. However, I would have thought that the VB6 SessionMgr object is calling the SessionUtility DLL, and thus is using the same code to issue the cookie. I have re-registered the SessionUtility using gacutil, and re-exposed it using regasm. How else is the cookie being issued when a user accesses an ASP classic page? How can I change the expiration time?
We have been building ASP.Net websites for many years. During this time we gathered a lot of knowledge of ASP.Net. We know what to use, a what not. One problem is still, persistently, bugging us. I hope to solve this for once and for all.
We have a fairly large solution with lots of aspx-files. All aspx-files reside in one Web Application Project. This single big WAP needs to be split in multiple smaller projects.
There are a number of ways to accomplish this, but I am still unsure what the best way would be. We use ASP.Net 4.0 and Visual Studio 2010 Premium.
This is our current work-around (which we do not like)
I had no problem with this in Visual Studio 2008 but it seems that VS 2010 is having an issue, and I'm betting it's probably me.I have a solution with an ASP.NET Web Site Project and a few C# projects (BLL, DAL, Tests in NUnit). I have configured the build process for the test project to automatically run NUnit to run the tests. I would like to ensure that the BLL and DAL projects build before the test project so that the tests will run against the latest compiled version (yes, I know I could do this all in one project, but I'm choosing not to -- please bear with me :) )
So, I set the dependencies of the Test project to include the BLL, DAL, and Web Application projects, and the build order shows BLL, DAL, Web Application, and then Tests. However, I noticed that the BLL doesn't actually build when I build the Test project.Any idea what this could be or any option I might be missing to force the other projects to build when I build the Test project?
I have a project at work where I need different versions of the same site.
I need to accomplish this by having different versions of the same resource files.
I would like to store the different versions of the same resource files in seperate projects in the same solution. Then choose which project of resource files to use when I publish or compile.
I've been searching the net everywhere and my deadline is coming up.
I am reorganizing my MVC app into a Models project and a Controllers project, and then the main application as a project. So, everything is working good so far except. Whenever I go to "Rebuild" my controllers project, I get this error: Controllers.AccountController.Initialize(System.Web.Routing.RequestContext)': no suitable method found to override.
Keep in mind that AccountController.cs was automatically placed in my application by Visual Studio, and this was all working fine when the Controllers were within my main project. I think it might have to do with the ASPNETDB.MDF file that this AccountController.cs file references to authenticate users as they log in, since this database stayed within my main project and didn't follow the Controllers project.
Here's the Initialize method on my AccountController: protected override void Initialize(RequestContext requestContext) { if (FormsService == null) { FormsService = new FormsAuthenticationService(); } if (MembershipService == null) { MembershipService = new AccountMembershipService(); } base.Initialize(requestContext); }