Sub Areas To Group The Controllers?
Feb 17, 2011Does the current MvcRouteHandler support something similar to Monorail's concept of an controller area? a way to group the controllers.
View 1 RepliesDoes the current MvcRouteHandler support something similar to Monorail's concept of an controller area? a way to group the controllers.
View 1 RepliesI'm starting a new ASP.NET MVC project, and I decided to put my controllers in a different assembly. Evertyhing works fine, but I have hit a problem: I created a new area in my MVC Project, called Administration. I have an AdminController Class in my seperate assembly which is supposed to return views from my Admin area, but everytime it tries to return a view, it looks for it in the wrong place (~/Admin/SomeView.cshtml Instead of ~/Administration/Admin/SomeView.cshtml) How can I tell the controller to look for views in the wanted area?
View 1 RepliesI'm using MVC 2, I need to change the default name "Areas" to <MyOwnAreaName>.
Is't possible to change default name "Areas" to my own name?
I'm using a linq group by query (with two grouping parameters) and would like to use the resulting data in a nested repeater.
var dateGroups = from row in data.AsEnumerable()
group row by new { StartDate = row["StartDate"], EndDate = row["EndDate"] };
"data" is a DataTable from an SqlDataAdapter-filled DataSet. "dateGroups" is used in the parent repeater, and I can access the group keys using Eval("key.StartDate") and Eval("key.EndDate").
Since dateGroups actually contains all the data rows grouped neatly by Start/End date, I'd like to access those rows to display the data in a child repeater. To what would I set the child repeater's DataSource? I have tried every expression in markup I could think of; I think the problem is that I'm trying to access an anonymous member (and I don't know how.) In case it doesn't turn out to be obvious, what would be the expression to access the elements in each iteration of the child repeater? Is there an expression that would let me set the DataSource in the markup, or will it have to be in the codebehind on some event in the parent repeater?
Stack-Overflow :3 I've got a kind of hard-case question.
So I'll try clearly explain my idea with my poor english :/ need select to DataTable SOME values from ???_**GetDisplayData **procedure for each day of previos month (GROUP IT) where group rules for different columns is different
I need to select some values in stored procedure from other stored procedure like this :
SELECT X FROM Y_Procedure(@ProcedureParameters)Also I need to select from dynamic SQL Procedure like
Y_Procedure=@Y+'_Procedure'
SELECT X FROM Y_Procedure(@ProcedureParameters)
Also I need to load it to DataTable :-/INSERT INTO @Report (CellHorizontal, CellVertical, CellValue) --to TABLE
SELECT Date,X2,X3 FROM Y_GetDisplayData(@Param)
SET NOCOUNT OFF;
SELECT *
FROM @Report
GetDisplayData works as select with parameters and that doesn't returns SQL DataTable
And there is no way to recode GetDisplayData's procedures, it's just constant procedures for me.Finally I need to Group nodes from this table
INSERT INTO @Report (CellHorizontal, CellVertical, CellValue)
SELECT T1.Date,
IF ((Select grouptype...)=1) T1.X2 + T2.X2
ELSE IF ((Select grouptype...)=2) AVG(T1.X2,T2.X2),
IF ((Select grouptype...)=1) T1.X3 + T2.X3
ELSE IF ((Select grouptype...)=2) AVG(T1.X3,T2.X3),
(SELECT T2.Date,X2,X3 FROM Y_GetDisplayData(@Param) T2
WHERE T2.Date>T1.Date AND T2.Date>=T1.Date)
FROM Y_GetDisplayData(@Param) T1
GROUP BY EVERY DAY ???--and here is epic fail
I can make all stuff on asp server :And C# allows me to use something like SelectCommand = IzmProc + "_GetDisplayData"; And then I will work (select special data) with DataTables on ASP.NET Server but it's better to make all on SQL ... But looking like it's just unrealizable on SQL >_<
I gonna think about C# realization,but my code is very weird , got errors and doesn't works >_<
public static DataTable GetReport(string Param)
{
System.Configuration.ConnectionStringSettings connSetting = ConfigurationManager.ConnectionStrings["FlowServerConnectionString"]; [code].....
I need to develop a page in my applicaiton like the image for the user lists.
I need to get the list of users under a group and need to show likw this.
I'm following this blog post about setting up ELMAH with MVC: [URL] I've only done part 1. Everything works correctly if I simply go to the Home controller, and then cause an error. I can view /elmah.axd as well, and my errors are logging in the database correctly.
However, I've added an area to my application named Admin. If I navigate to /Admin, I receive the following error:
System.MissingMethodException: No parameterless constructor defined for this object.
public override IController CreateController(RequestContext requestContext, string controllerName)
{
var controller = base.CreateController(requestContext, controllerName); //Error here
var c = controller as Controller;
I'm assuming this has something to do with my Area.
EDIT for jfar:
For instance, I have an Employees controller in my Admin area:
public class EmployeesController : Controller
{
private IEmployeesRepository employeesRepository;
public EmployeesController(IEmployeesRepository employeesRepository)
{
this.employeesRepository = employeesRepository;
}
//...
}
To use separation of concern and to optimize the clearness of the controllers we decided to split each action of a controller into different controllers (FunctionalLocationEditController, FunctionalLocationCreateController and such).
Problem now is the Global.asax is currently a bit big for just a few pages registered in routes.
We would need to use an area type of mechanism but for business reason we are not ready to upgrade just yet to MVC2.
Basically, is there a way in MVC1 to map the Urls to something like <folder>/<controller>/<action> ?
Been starting a new project (MVC 2) based on the first version of the same application (MVC 1).In the first we breaked out Controllers and Views into seperate projects, which resuted in a clean and organized structure.Now with version 2, I've been reading about this "Areas".Keeping the old structure and using areas sounds like overkill to me. Keeping the old way OR use Areas is what I'm trying to decide on.Just wanted to hear your thoughts about this.... Is it really that usefull (ie have other benifits)? No use to make some major changes just because something is there IMHO
View 3 RepliesI am wondering if MVC offers a handy function to iterate through all areas. I know I can search the sub-directories of Areas to achieve this. I am just curious.
View 3 RepliesWe have many different clients, and each client can have multiple user accounts.Right now, we have user settings set up on the ASP project, and a WinForms application can see these settings, depending on which user logs into the winforms application. They are specific to the user. I want to make them specific to the client, so users can be in "groups" by their client, and all users in the group would see/update the same settings.
View 1 Repliesis there some way to share a partial razor view between areas? For example a login partial, it is found if i use @Html.Partial("_LoginPartial") but the URLs Html.ActionLink generates are local to the calling area (even though the partial itself is not part of the area).
_LoginPartial.cshtml is in /Views/Shared/_LoginPartial.cshtml
Calling view is inside /Areas/Somearea/Views
Links generated are like: [URL]
But should always be: [URL]
Partial view source:
@if(Request.IsAuthenticated) {
<text>Welcome <b>@Context.User.Identity.Name</b>!
[ @Html.ActionLink(@Messages.Logout, "Logout", "Account") ]</text>
}
else {
@:[ @Html.ActionLink(@Messages.Login, "Login", "Account") ]
}
If I create an Area, does it have to reside off of the root? Or can I create it in a sub-folder? If so, how to you set the MapRoute so you can navigate to rootSecureAreasAdmin?
View 9 RepliesI created an Area in my application named Admin. It's pretty basic, looks like this:
Areas
Admin
Controllers
CompaniesController.cs
Models
Views
Companies
Index.aspx
AdminAreaRegistration.cs
When I try to view my Index page by going to /Admin/Companies, I get a "The resource cannot be found" message. I find it weird that I don't get any sort of error message.
Where should I put my common _layout.cshtml file for all of my Areas?
View 4 RepliesI want to structure my ASP.NET MVC 2 web application sensibly using Areas. The application consists of the two main parts Website which is the default part and Dashboard which administrates the site using a CMS. (Probably, more Areas will follow later on.)
How do I structure my project best? Should I ...
create the Area Dashboard and put the stuff belonging to the Website part into the main application folder or should I create both Areas Website and Dashboard?
Additionally, where should I place my Entity Data Model and the corresponding Repository classes that have to be accessed by both Areas?
I have two areas: Frontend and Backend - I would like to have two different error pages - so I have two files NotFound in /Areas/Frontend/Views/Shared/NotFound and /Areas/Backend/Views/Shared/NotFound. I have added also to Web.config in area Frontend:
<customErrors mode="On" defaultRedirect="Error">
<error statusCode="403" redirect="NoAccess" />
<error statusCode="404" redirect="/Areas/Frontend/Views/Shared/NotFound" />
</customErrors>
and in area Backend in Web.config:
<customErrors mode="On" defaultRedirect="Error">
<error statusCode="403" redirect="NoAccess" />
<error statusCode="404" redirect="/Areas/Backend/Views/Shared/NotFound" />
</customErrors>
But when I come in bad website url - for example: http://localhost/Backend/blablabla I don't see my NotFound website but:
Server Error in '/' Application.
The resource cannot be found.
Description:
HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled correctly.
Requested URL: /Backend/blablabla
In my application I have controller named `Snippets` both in default area (in application root) and in my area called `Manage`. I use T4MVC and custom routes, like this:
routes.MapRoute(
"Feed",
"feed/",
[code...]
I've got IIS 6 with a self-signed certificate installed. This is now securing the whole site (all urs are HTTPS). How do I only apply HTTPS to logged in areas, leaving publicly viewable data with HTTP?
View 8 RepliesThis page is a directory search, it has controls identified by record ID, however there exists a situation where there can be more than one result with the same record ID, thus making .NET barf. I had originally implemented a check that just didn't put the control on the page, if it was already there, but we've been getting negative feedback.
My question is this: Is there a way to put the same control in two places at once, for instance having if a user checks one, the corresponding one checks as well? I'm not terribly well versed in how .NET behaves, but I'll try to provide as much additional context as possible, if needed.
EDIT: Here's the updated code that generates the controls by looping over a datatable of results
Dim cbxSendInfo As CheckBox
Dim strCheckboxID As String = "cbxSendInfo-" & drOrganizer("ID") & "-" & i
Debug.text = Debug.text & " Loading Checkbox (" & strCheckboxID & ")...<br />"
cbxSendInfo = New CheckBox
cbxSendInfo.ID = strCheckboxID
cbxSendInfo.enableViewState = true
And here's the code that finds the controls and builds the contact list:
Dim strCheckboxID As String = "cbxSendInfo-" & drOrganizer("ID") & "-" & i
Dim cbxSendInfo As CheckBox = Me.tblResults.FindControl(strCheckboxID)
If cbxSendInfo.Checked Then
alOrganizers.Add(drOrganizer("ID"))
End If
Where drOrganizer("ID") is the record ID, and i is the result record number.
I know this is a terrible way to do this, at least from my background, but like I said, this is inherited code that's been hacked to pieces.
my site I want to calculate the distance between two areas of same city.Like I am using a search criteria where I have a drop down list. In which options are as below.
100km-70km
70km-50km
50km-10km
When user selects any one of the options the schools or shops in the specified area should be displayed. Is it possible to dynamically calculate the distance,
I am not sure how to explain my current issue. Right now I have a Form that spans a couple of pages. I have divided the Form into multiple section as well including a File Upload section, a File Download section, and have an 'Update' button at the bottom of the Form. I also have Error labels within each section, and have an Error label at the bottom of the Form under the 'Update' button.The problem that I am experiencing right now is that when I produce one of these errors, the Form automatically displays the very top of the page. So in other words, if the error message is displayed at the bottom of the Form, the user has no idea unless they scroll all the way down.Is there anyway to keep the application focus at the area where the button is clicked on? This way if the user produces an error, they will see it right away.
View 4 Repliesi'm upgrading my asp.net mvc app to the MVC 3 from mvc 2. I had everything set up so that there were no areas, but now i have to move the old application into its own area so i can start a new one. The new area is working great, but for some reason, when i try to go into the area where the old app was, it looks for the views to be in the views folder in the root of the app, instead of in the views folder in the area.
View 2 RepliesI've seen a few postings about MVC's inability to recognize a web.config in the areas sub folder.
I have a situation where each area is in a separate solution/project. There is history and organizational goals that prevents us from following the current standard. Is there anyway possible mechanism for me to dynamically load the web.config located anywhere within the area?
I've looked at the WebConfigManager but I believe that just opens the config and returns a configuration object. It doesn't really load the web.config in the current context.
In the previous version of our application we worked one we used MVC 1, so no area's. Following the ASP.NET MVC Best Practices by Kazi Manhur, I Created Extension methods of UrlHelper to generate your url from Route
Now with the new version, we are using MVC 2 and Areas. I was just wondering if one should implement it as before or have a new "best practice" regarding this emerged?
What I'm doing right now is:
1) Create a route in my area's route registration:
[Code]....
2) Creat an UrlHelper Extension method:
[Code]....
3) then just call it like this:
[Code]....
While typing this I started wondering what is the use of the ID you specify for the Area route..cant one just call the route using that?