I have a base class called BasePage, and a master page called SiteMaster. All my content pages inherit BasePage using BasePage instead of System.Web.UI.Page. Now, I need to access some functions in BasePage from my master page SiteMaster, let's say, the function is called "DisplayClientName()". How can I do it? Searched the Web, have found tons of similar questions but not solid solutions.
Since we can access the private data member of base class in the derived class with the help of friend function. How can we do the same in C# asp.net? I mean whats the alternative of friend function in C# asp.net
Is it possible for a Controller Base class to access a parameter from an action link and if so how do I access that parameter within my Base Controller?
Action Link:
<%=Url.Action("Area_1419", "Home", new { SectionId = 1})%>
Base Controller Class:
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using Website.Models; namespace Website.Controllers { public abstract class CategoriesController : Controller { public CategoriesDataContext _dataContext = new CategoriesDataContext(); public CategoriesDataContext DataContext { get { return _dataContext; } } public void SectionID() { int SectionID = Convert.ToInt32(Request.QueryString["SectionID"]); ViewData["SectionID"] = SectionID; } public CategoriesController2() { //ViewData["Categories"] = from m in _dataContext.Categories where m.Area_ID == SectionID select m; //ViewData["Categories"] = from c in DataContext.Categories select c; } } }
HomeContoller
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using Website.Models; using Website.ActionFilters; namespace Website.Controllers { [HandleError] public class HomeController : CategoriesController { public ActionResult Index() { return View(); } public ActionResult About(int? SectionID) { //ViewData["Message"] = SectionID; return View(); } public ActionResult Area_1419(int SectionID) { return View(); } public ActionResult Admin() { return View(); } } }
I built a base controller class inherits from Controller class to add some custom behavior to all controllers which will inherit from this base class.
My issue is when I try to access HTTPContext and Session objects in my custom base class, they are always null.
Am I doing something wrong or need missing something?
My custom base class definition:
public class ApplicationControllerBase : Controller
controllers classes definition:
public class HomeController : ApplicationControllerBase
using ASP.NET MVC 1, .NET 3.5.
UPDATE:
It seems the issue is I try to access HTTPContext in the constructor while HTTPContext is not ready yet, I tried it in the OnActionExecuted event handler and it works fine.
My question is what is the best place to access Session object in my custom controller class, that will guarantee executing my code with all controllers.
I have the below structure. Admin_note --> AdminBasePage --> System.Web.UI.Page.But Page_Load does not call in AdminBasePage when calling page_load in Admin_note class.Do you know how to solve??
I am attempting to access a textbox control on a master page from a code behind base class but having problems. I have 3 levels of master pages. m1.master is the master page for m2.master which is the master page for m3.master.m3.master has a textbox as shown below
I am new in asp .net.I am not able to undestand why we call base class method when we override methods/events.Like automatically visual studio will put base.OnInit() if you are overriding OnInit.
I am feeling that I have terribly wrong somewhere. I was working on a small asp.net app. I have some dynamic themes in the heme folder and have implemented a page base class to load the master page on the fly. The master is having the ContentPlaceHolder like: <asp:ContentPlaceHolder ID="cphBody" runat="server" />
Now I am adding pages that are derived from my base class and added the form elements. I know, Visual Studio has problem showing the page in the design mode. I have a dropdown box and wish to add the event of onselectedindexchange. But it is not working. the page is like this:
I have the following PerformanceFactsheet.aspx.cs page class
public partial class PerformanceFactsheet : FactsheetBase protected void Page_Load(object sender, EventArgs e) // do stuff with the data extracted in FactsheetBase divPerformance.Controls.Add(this.Data); where FactsheetBase is defined as public class FactsheetBase : System.Web.UI.Page [code]...
I've tried setting the <pages pageBaseType="DynamicWebPage" /> value in web.config, but when I response.write out the page type, I'm still getting Microsoft.WebPages.WebPage.
I'm simply trying to sub-class WebPage and add some additional functionality such as a dynamic PageData dictionary similar to Phil Haack's dynamic ViewData dictionary.
it's possible to put the database connection settings into a base page class so that I can auto-init them on a page. like this document: [URL] but with instructions in VB.net
I want to search my asp.net pages and user controls to see which master page and base class they use. I mention search because we are re-factoring a large project and we need to track progress on the code conversion. I know I can pull this information individually but I need a automated and repeatable procedure.
Currently I'm doing common functionality required throughout my site inside of my masterpage. What I want to do is move this functionality to a BaseClass so All my pages inherit from the Base Class. However, I'm not sure how to set this up interms of c# code with regards to Using a Base Class and then having a masterpage applied to my aspx pages that i create.
Using the following Webservice definition using aClientArgs as a complex type:
[System.Web.Script.Services.ScriptService] public class Controller : System.Web.Services.WebService { [WebMethod] public void save_client(aClientArgs client) { // Save client data } } Then defining aClientArgs as a sub-class: public class aArgs { public string id = null; public string name = null; } public class aClientArgs : aArgs { public string address = null; public string website = null; } Returns the following WSDL fragment for the save_client args: <save_client xmlns="http://tempuri.org/"> <client> <address>string</address> <website>string</website> </client> </save_client> When I'm expecting the following: <save_client xmlns="http://tempuri.org/"> <client> <id>string</id> <name>string</name> <address>string</address> <website>string</website> </client> </save_client>
So it appears that the .NET WebService is not treating inherited properties as arguments/variables for purposes of a web service. How do I get .NET to also use the properties of the base class?
I'd like to inherit all my controllers from a custom base class that I write myself. I can change the line every time I add a new controller, but it would be nicer if I could somewhere specify the default value that gets set there. That way I wouldn't need to worry about forgetting this, and other people who get added to the project later on would have an easier time.
In my MVC project, I am trying to setup a base product class that will be inherited by a more specific class later. Here is my scenario. I have a table called ProductBase, it contains three fields, BaseProductId(PK), CatalogNum, and ListPrice. Every product in the system will share these attributes. Next, I have a table called Shirt, with three fields BaseProductId(PK, FK), Color, and Size.
I then setup an Entity Data Model that pulled in both of these tables and created classes BaseProduct and Shirt. So, in my model, I want to do something like this:
[Code]....
The main problem I have with this, is that if I do any kind of condition on CatalogNum or ListPrice, then my performance goes to crap. One of the main things we will want to do is something like this:
[Code]....
This takes an enormous performance hit, and I suspect it is because the partial class above returns to the database for each shirt.
The other problem I have with this approach, is that I cannot force the properties for the Shirt. What if I make a change to the BaseProduct? What happens when I have multiple product types, will I have to repeat this code? I assume I will need to make a change with the entity data model, but I am unsure where to begin.
I want to add a custom base class for all of my web forms. I created a "App_code" folder in my asp.net web project and add a simple base page class like this:
namespace MySite.Web { // base page for all the pages that need localization public class LocalizationPage : System.Web.UI.Page { protected override void InitializeCulture() { base.InitializeCulture(); } } }
And then I try to let asp.net web form to inherit from this base page. I have something like this:
using MySite.Web;
namespace MySite.Public { public partial class RegisterPage : LocalizationPage { } }
Now I run into problem where Visual Studio doesn't recognize the LocalizationPage class I created. On the above code snippet, LocalizationPage is not highlighted as a class. And when I try to compile, I got the following error message:
Error 1 The type or namespace name 'LocalizationPage' could not be found (are you missing a using directive or an assembly reference?)
We have a base class that all our webpages in our application inherit from. I have a static method in the base class which when called will clear values from the application cache. Now the issue is this method needs to be triggered from a source outside the current application. I there any way this can be accomplished without creating an aspx page that will call this base method on page load.
I am trying to access an item default.aspx.vb which is in the class page in the app_code folder. Why am I unable to access this through intellisense?
If Not m_qKnown.Contains(HRefs(i)) Then
here is the class page. In my vs, m_qknown is underlined in blue. How come I can't access this queue in this code behind page for the default.aspx? In my intellisense, if I try to prefix it with the name of the page (Charlotte.vb) Charlotte.Webcrawler. after this dot there is no m_qKnown. There are some queuing event handlers and that's about it.
I'm trying to avoid adding more items to a queue if the item is already in the known queue. I'm happy to email this website application to anyone who would like to test it.
I am trying to develop logic to add dynamic controls to page via class method. So I want to know how can we access the ASP.Net Page object reference in class method.
i have a hidden textbox in my aspx page. The aspx page also has a masterpage in the <% @Page> directive.
<input type="hidden" runat="server" name="txtType" id="txtType" /> actually in aspx.cs i am getting txtType.ClientID="ctl00_MainHeaderContent_txtType"
I have a webpart in a webpart zone in this aspx page. In the webpart CreateChildcontrols() I need to access this hiddenTextbox value. I am able to access it as
But instead of hardcoding I want to access as a control in the page or form. How can I do that I want to do as looping through the controls in the page but Page.Controls.Count gives 1 and that is MasterPage. How can I get the entire controls in the page and loop through and find the hidden textbox. I also tried as string TxtValue = this.Page.Request.Form["<%=txtType.ClientID%>"] in CreateChildControls() of the webp[art. But could not access hidden textbox like this.