Search Results

Search found 129 results on 6 pages for 'renderpartial'.

Page 4/6 | < Previous Page | 1 2 3 4 5 6  | Next Page >

  • ASP.NET MVC2 : How to use radiobuttons in a grid ?

    - by Stef
    Again a question about RadioButtons/ RadionButtonList I've the following Model: public class **SkillLevelModel** { public long? Id { get; set; } public int? SelectedLevel { get; set;} } I've the following Controller: public class SkillController : BaseController { public ActionResult Index() { var skills = new List<SkillLevelModel>(); for (int i = 0; i < 10; i++) skills.Add(new SkillLevelModel() { Id = i, SelectedLevel = new Random().Next(0,5) }); return View(skills); } I've the following code in the View: <% foreach (var item in Model) { %> <tr> <td style="width: 30px" align="center"> <%= Html.Encode(item.Id) %> </td> <td> <% Html.RenderPartial("UCSkillLevel", item); %> </td> </tr> <% } %> I've the following code in the PartialView: <% for (int i = 0; i <= 5; i++) { %> <td align="center"> <%= Html.RadioButton("SelectedLevel", i, new { id = Model.Id + "_" + i })%> </td> <% } %> The problem is that no radiobutton is checked, althought they have a level. What's wrong here?

    Read the article

  • MsChart : Partial view error

    - by Poomjai
    Hi I have a problem when i using Mschart on my MVC project, when i use the first index page of project to render for the partial view name index2 the code is <% Html.RenderPartial("Index2"); %> But when i run it the error is occur which the message is CS0029: Cannot implicitly convert type 'ASP.views_home_index2_ascx' to 'System.Web.UI.Page' -it said that the problem line of code is : // Render chart control Line 52: Chart2.Page = this; << At here Line 53: HtmlTextWriter writer = new HtmlTextWriter(Page.Response.Output); Line 54: Chart2.RenderControl(writer); But when i put all of code in Index2.ascx to the index.aspx and not to render the partial view it work fine Code of Index2.ascx is <% System.Web.UI.DataVisualization.Charting.Chart Chart2 = new System.Web.UI.DataVisualization.Charting.Chart(); Chart2.Width = 412; Chart2.Height = 296; Chart2.RenderType = RenderType.ImageTag; Chart2.Palette = ChartColorPalette.BrightPastel; Title t = new Title("No Code Behind Page", Docking.Top, new System.Drawing.Font("Trebuchet MS", 14, System.Drawing.FontStyle.Bold), System.Drawing.Color.FromArgb(26, 59, 105)); Chart2.Titles.Add(t); Chart2.ChartAreas.Add("Series 1"); Chart2.Series.Add("Series 1"); // add points to series 1 Chart2.Series["Series 1"].Points.AddY(3); Chart2.Series["Series 1"].Points.AddY(4); Chart2.Series["Series 1"].Points.AddY(5); Chart2.BorderSkin.SkinStyle = BorderSkinStyle.Emboss; Chart2.BorderColor = System.Drawing.Color.FromArgb(26, 59, 105); Chart2.BorderlineDashStyle = ChartDashStyle.Solid; Chart2.BorderWidth = 2; Chart2.Legends.Add("Legend1"); // Render chart control Chart2.Page = this; HtmlTextWriter writer = new HtmlTextWriter(Page.Response.Output); Chart2.RenderControl(writer); %

    Read the article

  • How to secure Add child record functionality in MVC on Parent's view?

    - by RSolberg
    I'm trying to avoid some potential security issues as I expose some a new set of functionality into the real world. This is basically functionality that will allow for a new comment to be added via a partialview on the "Parent" page. My comment needs to know a couple of things, first what record is the comment for and secondly who is making the comment. I really don't like using a hidden field to store the ID for the Parent record in the add comment form as that can be easily changed with some DOM mods. How should I handle this? PARENT <% Html.RenderPartial("AddComment", Model.Comments); %> CHILD <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<CommentsViewModel>" %> <% using (Html.BeginForm("AddComment", "Requests")) {%> <fieldset> <legend>New Comment</legend> <%= Html.HiddenFor(p => p.RequestID) %> <%= Html.TextBoxFor(p => p.Text) %> &nbsp; <input type="submit" value="Add" /> </fieldset> <% } %> CONTROLLER [AcceptVerbs(HttpVerbs.Post)] public void AddComment(CommentsViewModel commentsModel) { var user = GetCurrentUser(); commentsModel.CreatedByID = user.UserID; RequestsService.AddComment(commentsModel); }

    Read the article

  • ASP.NET MVC Ajax.BeginForm eats params of submit button clicked. Looks like bug.

    - by RonnBlack
    If you are using Ajax.BeginForm() with multiple submit buttons similar to this: // View.aspx <% using (Ajax.BeginForm("Action", "Controller", new AjaxOptions { UpdateTargetId = "MyControl", })) { %> <span id="MyControl"> <% Html.RenderPartial("MyControl"); %> </span> <% } %> //MyControl.ascx <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %> <input name="prev" type="submit" value="prev" /> <input name="next" type="submit" value="next" /> //... Everything is submitted to the controller fine but the params for the submit button that was clicked are absent from the Request. In otherwords Request["next"] and Request["prev"] are always null. I looked in to the JavaScript in Microsoft.MvcAjax.js and it looks like the function Sys_Mvc_MvcHelpers$_serializeForm completely skips over the inputs that are of type 'submit'. This doesn't seem logical at all. How else can you find out what button has been clicked? It looks like a bug to me. Is there any logical reason to skip these form parameters?

    Read the article

  • .Net MVC UserControl - Form values not mapped to model

    - by Andreas
    Hi I have a View that contains a usercontrol. The usercontrol is rendered using: <% Html.RenderPartial("GeneralStuff", Model.General, ViewData); %> My problem is that the usercontrol renders nicely with values from the model but when I post values edited in the usercontrol they are not mapped back to Model.General. I know I can find the values in Request.Form but I really thought that MVC would manage to map these values back to the model. My usercontrol: <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<namespace.Models.GeneralViewModel>" %> <fieldset> <div> <%= Html.LabelFor(model => model.Value)%> <%= Html.TextBoxFor(model => model.Value)%> </div> </fieldset> I'm using .Net MVC 2 Thanks for any help!

    Read the article

  • ASP.NET MVC - PartialView not refreshing

    - by Billy Logan
    Hello Everyone, I have a view that uses a javascript callback to reload a partial view. For whatever reason the contents of the partial class do not refresh even though i can step through the entire process and see the page being recalled and populated. Any reason why the page would not display? Code is as follows: <div id="big_image_content"> <% Html.RenderPartial("ZoomImage", Model); %> </div> This link should reload the div above: <a href="javascript:void(0)" onclick="$('#big_image_content').load('/ShopDetai/ZoomImage);" title="<%= shape.Shape %>" alt="<%= shape.Shape %>"> <img src="http://images.rugs-direct.com/<%= shape.Image.ToLower() %>" width="40" alt="<%= shape.Shape %>"> </a> partial view(ZoomImage.ascx) simplified for now, but still doesn't load: <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<RugsDirect.Data.ItemDetailsModel>" %> <%= Model.Category.ToLower()%> And finally the controller side of things: public ActionResult ZoomImage() { try { ItemDetailsModel model = GetMainImageContentModel(); return PartialView("ZoomImage", model); } catch (Exception ex) { //send the error email ExceptionPolicy.HandleException(ex, "Exception Policy"); //redirect to the error page return RedirectToAction("ViewError", "Shop"); } } Again, i can step through this entire process and all seems to be working accept for the page not reloading. I can even break on the <%= Model.Category.ToLower()% of the partial view, but it will not be displayed. Thanks in advance, Billy

    Read the article

  • Html.LabelFor and Html.TextBoxFor generate empy html code

    - by Ceridan
    I'm writing my first ASP.NET MVC application and there is one big problem for me. I want to make a control which will represent a form, but when I try to generate labels and textboxes it returns to me empty page. So, this is my model file (MyModel.cs): namespace MyNamespace.Models { public class MyModel { [Required(ErrorMessage = "You have to fill this field")] [DisplayName("Input name")] public string Name{ get; set; } } } This is MyFormControlView.ascx file with my control: <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<MyNamespace.Models.MyModel>"%> <div> <% using (Html.BeginForm()) { Html.LabelFor(m => m.Name); Html.TextBoxFor(m => m.Name); Html.ValidationMessageFor(m => m.Name); } %> </div> And this is my Index.aspx file where I render the control: <%@ Page Language="C#" MasterPageFile="~/Views/Shared/Main.Master" Inherits="System.Web.Mvc.ViewPage<System.Collections.IEnumerable>" %> <asp:Content runat="server" ID="MainContent" ContentPlaceHolderID="MainContent"> This is my control test! <%Html.RenderPartial("MyFormControlView", new MyNamespace.Models.MyModel { Name = "MyTestName"}); %> </asp:Content> So, when I run my application the result is lonely caption: "This is my control test!" and there are no label or textbox on the generated page. If I inspect the source code of the generated page I can see my block, but it's inner text is empty. Please, could you help me?

    Read the article

  • Ajax.BeginForm driving me crazy

    - by Fabio Milheiro
    ASP.NET MVC3 I have a partial view that is initially rendered inside a div. The following is the partial code: @model Venue.Models.Validation.CustomerRequestModel <script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> <script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> <script type="text/javascript" src="/Scripts/MicrosoftAjax.js"></script> <script type="text/javascript" src="/Scripts/MicrosoftMvcAjax.js"></script> <script type="text/javascript" src="/Scripts/MicrosoftMvcValidation.js"></script> @{ Html.RenderPartial("Message"); } @Html.ValidationSummary() @using (Ajax.BeginForm( "Customer", "Service", null, new AjaxOptions() { HttpMethod = "post", InsertionMode = InsertionMode.Replace, LoadingElementDuration = 100, LoadingElementId = "loading-customer", OnBegin = "hideSubmitButton", OnSuccess = "hideForm", OnComplete = "showSubmitButton", OnFailure = "showErrorMessage", UpdateTargetId = "formclientes", }, new { id = "customer-form" })) { // Fields are all type="text" although some are numbers. <input type="text" name="Address" class="clientes_form" /> } The action: [AcceptVerbs(HttpVerbs.Post)] public ActionResult Customer(CustomerRequestModel customer) { // ... } In the immediate window, this is what I get: this.Request.IsAjaxRequest() false Why?!

    Read the article

  • ASP.NET MVC Strongly Typed Widgets

    - by Ben
    I have developed a plugin system that makes it easy to plug in new logic to an application. Now I need to provide the ability to easily add UI widgets. There are already some good responses on how to create a portal system (like iGoogle) with ASP.NET MVC, and I'm fine about the overall concept. My question is really about how we make strongly typed widgets. Essentially when we set up a widget we define the controller and action names that are used to render that widget. We can use one controller action for widgets that are not strongly typed (since we just return PartialView(widgetControlName) without a model) For widgets that are strongly typed (for example to an IList) we would need to add a new controller action (since I believe it is not possible to use Generics with ActionResult e.g. ActionResult). The important thing is that the widget developers should not change the main application controllers. So my two thoughts are this: Create new controllers in a separate class library Create one partial WidgetController in the main web project and then extend this in other projects (is this even possible?) - not possible as per @mfeingold As far as the development of the widgets (user controls) go, we can just use post build events from our extension projects to copy these into the Views/Widgets directory. Is this a good approach. I am interested to here how others have handled this scenario. Thanks Ben P.S - in case it helps, an example of how we can render widgets - without using Javascript <%foreach (var widget in Model) {%> <%if (widget.IsStronglyTyped) { Html.RenderAction(widget.Action, widget.Controller); } else { Html.RenderPartial(widget.ControlName); } %> <%} %>

    Read the article

  • JQuery datepicker not working

    - by IniTech
    I'm completely new to JQuery and MVC. I'm working on a pet project that uses both to learn them and I've hit my first snag. I have a date field and I want to add the JQuery datepicker to the UI. Here is what I have done: Added <script src="../../Scripts/jquery-1.3.2.min.js" type="text/javascript"></script> to the site.master Inside my Create.aspx (View), I have <asp:Content ID="Create" ContentPlaceHolderID="MainContent" runat="server"> <h2> Create a Task</h2> <% Html.RenderPartial("TaskForm"); %> </asp:Content> and inside "TaskForm" (a user control) I have: <label for="dDueDate"> Due Date</label> <%= Html.TextBox("dDueDate",(Model.Task.TaskID > 0 ? string.Format("{0:g}",Model.Task.DueDate) : DateTime.Today.ToString("MM/dd/yyyy"))) %> <script type="text/javascript"> $(document).ready(function() { $("#dDueDate").datepicker(); }); </script> As you can see, the above checks to see if a task has an id 0 (we're not creating a new one) if it does, it uses the date on the task, if not it defaults to today. I would expect the datepicker UI element to show up, but instead I get: "Microsoft JScript runtime error: Object doesn't support this property or method" on the $("#dDueDate").datepicker(); Ideas? It is probably a very simple mistake, so don't over-analyze. As I said, this is the first time I've dealt with MVC or JQuery so I'm lost as to where to start.

    Read the article

  • MVC view engine that can render classic ASP?

    - by David Lively
    I'm about to start integrating ASP.NET MVC into an existing 200k+ line classic ASP application. Rewriting the existing code (which runs an entire business, not just the public-facing website) is not an option. The existing ASP 3.0 pages are quite nicely structured (given what was available when this model was put into place nearly 15 years ago), like so: <!--#include virtual="/_lib/user.asp"--> <!--#include virtual="/_lib/db.asp"--> <!--#include virtual="/_lib/stats.asp"--> <!-- #include virtual="/_template/topbar.asp"--> <!-- #include virtual="/_template/lftbar.asp"--> <h1>page name</h1> <p>some content goes here</p> <p>some content goes here</p> <p>.....</p> <h2>Today's Top Forum Posts</h2> <%=forum_top_posts(1)%> <!--#include virtual="/_template/footer.asp"--> ... or somesuch. Some pages will include function and sub definitions, but for the most part these exist in include files. I'm wondering how difficult it would be to write an MVC view engine that could render classic ASP, preferably using the existing ASP.DLL. In that case, I could replace <!--#include virtual="/_lib/user.asp"--> with <%= Html.RenderPartial("lib/user"); %> as I gradually move existing pages from ASP to ASP.NET. Since the existing formatting and library includes are used very extensively, they must be maintained. I'd like to avoid having to maintain two separate versions. I know the ideal way to go about this would be to simply start a new app and say to hell with the ASP code, however, that simply ain't gonna happen. Ideas?

    Read the article

  • post to actionrequest from an anchor

    - by griegs
    I have the following; <% using(Html.BeginForm("GetRecommendedProducts", "Home", FormMethod.Post)) { %> <% Html.RenderPartial("QuickQuote", Model.quickQuote); %> <div class="But brown" style="float:left;"> <a href="." onclick="$.unblockUI(); return false;">Close</a> </div> <div class="But green" style=""> <a href="." onclick="this.form.submit(); return false;">Go</a> </div> <%} %> When I click the anchor I do not get a post to my action. I know this should be possible so what am I doing wrong? The partial view only contains fields and not another BeginForm or anything like that. If I use a submit button it works ok but I can't use a submit button I need to use an anchor.

    Read the article

  • click event launched only once problem

    - by user281180
    I have a form in which I have many checkboxes. I need to post the data to the controller upon any checkbox checked or unchecked, i.e a click on a checbox must post to the controller, and there is no submit button. What will be the bet method in this case? I have though of Ajax.BeginForm and have the codes below. The problem im having is that the checkbox click event is being detected only once and after that the click event isnt being launched. Why is that so? How can I correct that? <% using (Ajax.BeginForm("Edit", new AjaxOptions { UpdateTargetId = "tests"})) {%> <div id="tests"> <%Html.RenderPartial("Details", Model); %> </div> <input type="submit" value="Save" style="Viibility:hidden" id="myForm"/> <%} %> $(function() { $('input:checkbox').click(function() { $('#myForm').click(); }); });

    Read the article

  • Windows Azure ASP.NET MVC Role behaves strangely when redirecting from HTTP to HTTPS

    - by Rinat Abdullin
    Subj. I've got an ASP.NET 2 MVC Worker Role Application, that does not differ much from the default template. When attempting redirect from HTTP to HTTPS (this happens when we access constroller secured by the usual RequireSSL attribute implementation) we get blank page with "Bad Request" message. IntelliTrace shows this: Thrown: "The file '/Views/Home/LogOnUserControl.aspx' does not exist." (System.Web.HttpException) Call stack is really short: [External Code] App_Web_vfahw7gz.dll!ASP.views_shared_site_master.__Render__control1(System.Web.UI.HtmlTextWriter __w = {unknown}, System.Web.UI.Control parameterContainer = {unknown}) [External Code] App_Web_bsbqxr44.dll!ASP.views_home_index_aspx.ProcessRequest(System.Web.HttpContext context = {unknown}) [External Code] User control reference is the usual one in /Views/Shared/Site.Master: <div id="logindisplay"> <% Html.RenderPartial("LogOnUserControl"); %> </div> And partial view LogOnUserControl.ashx is located in Views/Shared (and it is ASHX, not ASPX). Problem shows up, when we try to access site pages, that require auth and redirect. These pages are secured by RequireSSL attribute (Redirect == true): [AttributeUsage(AttributeTargets.Method | AttributeTargets.Class, Inherited = true, AllowMultiple = false)] public sealed class RequireSslAttribute : FilterAttribute, IAuthorizationFilter { public bool Redirect { get; set; } // Methods public void OnAuthorization(AuthorizationContext filterContext) { // this get's messy, when we are running custom ports // within the local dev fabric. // hence we disable code in the debug #if !DEBUG if (filterContext == null) { throw new ArgumentNullException("filterContext"); } if (filterContext.HttpContext.Request.IsSecureConnection) return; var canRedirect = string.Equals(filterContext.HttpContext.Request.HttpMethod, "GET", StringComparison.OrdinalIgnoreCase); if (canRedirect && Redirect) { var builder = new UriBuilder { Scheme = "https", Host = filterContext.HttpContext.Request.Url.Host, Path = filterContext.HttpContext.Request.RawUrl }; filterContext.Result = new RedirectResult(builder.ToString()); } else { throw new HttpException(0x193, "Access forbidden. The requested resource requires an SSL connection."); } #endif } } Obviously we compile in RELEASE for this case. Does anybody have any idea, what could cause this strange exception and how to get rid of it?

    Read the article

  • Model binding & derived model classes

    - by Richard Ev
    Does ASP.NET MVC offer any simple way to get model binding to work when you have model classes that inherit from others? In my scenario I have a View that is strongly typed to List<Person>. I have a couple of classes that inherit from Person, namely PersonTypeOne and PersonTypeTwo. I have three strongly typed partial views with names that match these class names (and render form elements for the properties of their respective models). This means that in my main View I can have the following code: <% for(int i = 0; i < Model.Count; i++) { Html.RenderPartial(Model[i].GetType().Name, Model[i]); } %> This works well, apart from when the user submits the form the relevant controller action method just gets a List<Person>, rather than a list of Person, PersonTypeOne and PersonTypeTwo. This is pretty much as expected as the form submission doesn't contain enough information to tell the default model binder to create any instances of PersonTypeOne and PersonTypeTwo classes. So, is there any way to get such functionality from the default model binder?

    Read the article

  • JavaScript on jQuery created code never gets called

    - by mare
    This is my view in ASP.NET MVC. <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Administration.Master" Inherits="System.Web.Mvc.ViewPage" %> <asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="HeadContent" runat="server"> <script type="text/javascript"> var ddlContentTypes; $(document).ready(function () { ddlContentTypes = $("#ContentTypes"); ddlContentTypes.bind("change", loadCreate); loadCreate(); }); function loadCreate() { var typeId = $("#ContentTypes option:selected").val(); $.get('~/' + typeId + '/Create', function (data) { $("#CreateForm").html(data); }); $("fieldset input").each(function (index, item) { $(item).attr("disabled", true); }); } </script> </asp:Content> <asp:Content ID="Content3" ContentPlaceHolderID="MainContent" runat="server"> <h2> <%=Resources.Localize.CreateWidget %></h2> <p> <% Html.RenderPartial("ContentTypeSelector"); %></p> <div id="CreateForm"> </div> </asp:Content> As you can see, it loads some HTML (actually user control) and adds it to the CreateForm div. This actually works fine. The problem is this $("fieldset input").each(function (index, item) { $(item).attr("disabled", true); }); never runs. The fieldset tag is in the response, so you don't see it here but it's there - everything is returned back fine (I checked with Firebug). Why do the above two lines of JS never run or have any effect?

    Read the article

  • Anchor as a Submit button

    - by griegs
    I have an MVC 2 application that has the following on it; <% using( Html.BeginForm("Results","Quote", FormMethod.Post, new { name="Results" })){ %> <% Html.RenderPartial("Needs", Model.needs); %> <div class="But green" style=""> <a href="." onclick="javascript:document.Results.submit();">Go</a> </div> <input type="submit" /> <%} %> Pressing the Submit button or the anchor both post back to the right ActionResult. However, when in the controller I return View(stuff..) only the Submit button will come back to the page. When the call finishes from pressing the anchor, I go to an error page informing me that the resource cannot be found. I suspect it has something to do with href="." but am unsure what to set it to.

    Read the article

  • asp.net mvc multiple fckeditors field

    - by mazhar kaunain baig
    how to add multiple fckeditor field on asp.net mvc page ok here is the code <% foreach (var OrganizationMeta in ((IEnumerable<Egovt.Models.OrganizationMeta>)ViewData["OrganizationMeta"])) { %> <% if (OrganizationMeta.vcr_DateType == "text") { %> <% TempData["OrganizationMeta"] = OrganizationMeta.vcr_MetaKey + Lang.int_LangId; %> <% Html.RenderPartial("ControlRender"); %> <% } %> <% } %> </div> controlrender <script src="<%= Url.Content("~/Content/js/fck/fckeditor.js") %>" type="text/javascript"></script> <script type="text/javascript"> window.onload = function() { var sBasePath = '<%= Url.Content("~/Content/js/fck/") %>'; var oFCKeditor = new FCKeditor('<%=TempData["OrganizationMeta"] %>'); oFCKeditor.BasePath = sBasePath; oFCKeditor.ReplaceTextarea(); } </script> <%= Html.TextArea(TempData["OrganizationMeta"].ToString(),"", new { @name = TempData["OrganizationMeta"] })%> How will i implement it

    Read the article

  • Using the same code in different (partial) views

    - by Danny Chen
    Maybe this question is quite simple because I'm new to MVC2. I have a simple demo MVC project. (1) A weak-typed view: Index.aspx <% Html.RenderPartial("ArticalList", ViewData["AllArticals"] as List<Artical>); %> (2) A strong-typed partical view: ArticalList.ascx <%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<List<Artical>>" %> <% foreach (Artical a in Model) { %> <%= Html.ActionLink(a.Title, "About", new { id = a.ID })%><br /> <%} %> (3) Here is the HomeController.cs public ActionResult Index() { ViewData["AllArticals"] = Artical.GetArticals(); return View(); } public ActionResult ArticalList() { return PartialView(Artical.GetArticals()); } Sorry I'm using a Web-Form "angle", because if I'm using a Web-Form, when I visit Index.aspx, rendering ArticalList.ascx will call public ActionResult ArticalList(). But here I need to write Artical.GetArticals() twice in two actions. How can I put them in one?

    Read the article

  • Good Replacement for User Control?

    - by David Lively
    I found user controls to be incredibly useful when working with ASP.NET webforms. By encapsulating the code required for displaying a control with the markup, creation of reusable components was very straightforward and very, very useful. While MVC provides convenient separation of concerns, this seems to break encapsulation (ie, you can add a control without adding or using its supporting code, leading to runtime errors). Having to modify a controller every time I add a control to a view seems to me to integrate concerns, not separate them. I'd rather break the purist MVC ideology than give up the benefits of reusable, packaged controls. I need to be able to include components similar to webforms user controls throughout a site, but not for the entire site, and not at a level that belongs in a master page. These components should have their own code not just markup (to interact with the business layer), and it would be great if the page controller didn't need to know about the control. Since MVC user controls don't have codebehind, I can't see a good way to do this. I've searched previous SO questions, and have yet to find a good answer. Options so far In an attempt to avoid turning the comments section into a discussion... RenderAction This allows the view to call another controller, which will be responsible for interacting with the BLL and whatever data is necessary to its corresponding view. The calling view needs to be aware of the sub controller. This seems to provide a nice way to encapsulate partial views and controls, without having to modify the calling controller. RenderPartial The calling controller is still responsible for executing whatever code is associated with the partial view, and making sure that the model passed to the partial view contains the data it expects. Effectively, modifying the partial view potentially means modifying the calling controller. Annoying especially if this is used in multiple places. Portable Areas Place each control in its own project/area?

    Read the article

  • jQuery code works for console but not in-page.

    - by justSteve
    I have a form element defined as: <div class="field"> <div class="name"> <label for="User_LastName"> Last name: <span class="asterisk">*</span></label> </div> <div class="value"> <%= Html.TextBox("User.LastName", Model.LastName)%> <%= Html.ValidationMessage("User.LastName")%> </div> </div> and a jQuery selector that is supposed to detect when the input gets focus and highlight the parent: $("input").focus(function() { //watching for an event where an input form comes into focus $(this) .parent() .addClass("curFocus") .children("div") .toggle(); }); If i paste this code into firebug's console - things work as planned. However, i'm running this from a 'RenderPartial' .net mvc page. Other jQuery code sitting within the same $(document).ready(function() { block work correctly. The form uses html helpers to generate the inputs which might complicate the process somewhat - but even so... i'm seeing correct behavior when that code's in console but not in a 'real-time' page. How do i troubleshoot this?

    Read the article

  • Where should my "filtering" logic reside with Linq-2-SQL and ASP.NET-MVC in View or Controller?

    - by Nate Bross
    I have a main Table, with several "child" tables. TableA and TableAChild1 and TableAChild2. I have a view which shows the information in TableA, and then has two columns of all items in TableAChild1 and TableAChild2 respectivly, they are rendered with Partial views. Both child tables have a bit field for VisibleToAll, and depending on user role, I'd like to either display all related rows, or related rows where VisibleToAll = true. This code, feels like it should be in the controller, but I'm not sure how it would look, because as it stands, the controller (limmited version) looks like this: return View("TableADetailView", repos.GetTableA(id)); Would something like this be even work, and would it be bad what if my DataContext gets submitted, would that delete all the rows that have VisibleToAll == false? var tblA = repos.GetTableA(id); tblA.TableAChild1 = tblA.TableAChild1.Where(tmp => tmp.VisibleToAll == true); tblA.TableAChild2 = tblA.TableAChild2.Where(tmp => tmp.VisibleToAll == true); return View("TableADetailView", tblA); It would also be simple to add that logic to the RendarPartial call from the main view: <% Html.RenderPartial("TableAChild1", Model.TableAChild1.Where(tmp => tmp.VisibleToAll == true); %>

    Read the article

  • Change HTML image into a Button for partial refresh of page

    - by user990951
    I am new to webpage design and MVC. I have a aspx page and I have a html image. I want to change this image and make it clickable so that it will refresh only the bottom half of the page when clicked. I setup my image so that the source of the image is updated by the controller. By using the following src="<%=ViewData["BookImg"] %>" So that the whole story is clear. When a person clicks on the image of the book, it displays on the bottom half of the page information about that book pulled from a sql database. I am thinking that I would need to look into getting ajax implemented so that I can do partial page update. But the question is how do I change that HTML image into a button. Thanks in advance. ---updating per the answer chosen but still having problems--- home.aspx <% Html.RenderPartial("HomePartialView"); %> <img id = "Book_Img" src="<%=ViewData["BookImg"] %>" alt = "click Me" class="imgClick"/> <script src="../../Scripts/jquery-1.5.1.js" type="text/javascript"> $(document).ready(function(){ $(".imgClick").click(function () { $("HomePartialView").load("../../Controllers/HomeController/PartialViewBook"); }); }); </script> ---Controller public ActionResult PartialViewBook() { ViewData[imageBookPressd] = "hello world"; return View("HomePartialView"); }

    Read the article

  • Render different view depending on the type of the data

    - by Miau
    Hi there So lets suppose we have an action in a controller that looks a bit like this: public ViewResult SomeAction(int id) { var data = _someService.GetData(id); ... //create new view model based on the data here return View(viewModel); } What I m trying to figure out is the best way to render a diferent view based on the type fo the data. the "_someService.GetData method returns an data that knows its out type (ie not only you can do typeof(data) but also you can do data.DataType and you ll get an enum value so I could achieve what I m trying to do doing something kinda like this public ViewResult SomeAction(int id) { var data = _someService.GetData(id); //I m mapping fields to the viewModel here var viewModel = GetViewModel(data); swtich(data.DataType) case DataType.TypeOne: return View("TypeOne", viewModel); break; ... } But this does not seem to be the nicest way, (I dont event know if it would work) Is this the way to go? Should I use some sort of RenderPartial Aproach? after all , waht will change in the view is mostly the order of the data (ie the rest of the view would be quite similar) Cheers

    Read the article

  • T4MVC Optional Parameter Inferred From Current Context

    - by Itakou
    I have read the other post about this at T4MVC OptionalParameter values implied from current context and I am using the latest T4MVC (2.11.1) which is suppose to have the fix in. I even checked checked to make sure that it's there -- and it is. I am still getting the optional parameters filled in based on the current context. For example: Let's say I have a list that is by default ordered by a person's last name. I have the option to order by first name instead with the URL http://localhost/list/stuff?orderby=firstname When I am in that page, I want to go back to order by first name with the code: @Html.ActionLink("order by last name", MVC.List.Stuff(null)) the link I wanted was simply http://localhost/list/stuff without any parameters to keep the URL simple and short - invoking default behaviors within the action. But instead the orderby is kept and the url is still http://localhost/list/stuff?orderby=firstname Any help would be great. I know that in the most general cases, this does remove the query parameter - maybe I do have a specific case where it was not removed. I find that it only happens when I have the URL inside a page that I included with RenderPartial. My actual code is <li>@Html.ActionLink("Recently Updated", MVC.Network.Ticket.List(Model.UI.AccountId, "LastModifiedDate", null, null, null, null, null))</li> <li>@Html.ActionLink("Recently Created", MVC.Network.Ticket.List(Model.UI.AccountId, "CreatedDate", null, null, null, null, null))</li> <li>@Html.ActionLink("Most Severe", MVC.Network.Ticket.List(Model.UI.AccountId, "MostSevere", null, null, null, null, null))</li> <li>@Html.ActionLink("Previously Closed", MVC.Network.Ticket.List(Model.UI.AccountId, "LastModifiedDate", null, "Closed", null, null, null))</li> the problem happens when someone clicks Previously Closed and and go to ?status=closed. When they click Recently Updated, which I want to the ?status so that it shows the active ones, the ?status=closed stays. Any insight would be greatly appreciated.

    Read the article

< Previous Page | 1 2 3 4 5 6  | Next Page >