.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
Gaurav Pal
Post New Web Links

reusable components and unique ids

Posted By:      Posted Date: August 24, 2010    Points: 0   Category :ASP.Net

I'm trying to create reusable "zones" but am having trouble figuring out how to give them all unique ids.

What I'd like is to be able to create a component which can be put on an mvc page using the usercontrol syntax or using RenderAction or RenderPartial.  I want to be able to update these components' content using ajax, so I need someway to reference them by id.  However, there is no mechanism in MVC that wraps anything in a div or something like that.

I've learned that if I extend ViewUserControl and put the controls on the page like so:

<Zones:TestControl runat="server" ID="TestControl1" />

Then I can use the 'ClientID' property to get the unique ID generated.  However, if I use RenderAction or RenderPartial in another request, obviously the control hierarchy is missing, so the ID is just 1.  So to get around this I made a simple base class like so:

public class BaseZone<TModel> : System.Web.Mvc.ViewUserControl<TModel>
        protected string zoneId;

        public string ZoneId
                string zoneId = ViewData["ZoneId"] as string;
                if (String.IsNullOrEmpty(zoneId))
                    return this.C

View Complete Post

More Related Resource Links

Web Services: Building Reusable Web Components with SOAP and ASP.NET


XML and HTTP are cross-platform technologies especially suited for building applications that can communicate with each other over the Internet, regardless of the platform they are running on. Web Services in the Microsoft .NET Framework make it easy to write components that communicate using HTTP GET, HTTP POST, and SOAP. An understanding of these concepts, along with knowledge of synchronous and asynchronous operations, security, state management, and the management of proxies by the .NET Framework is essential in building these applications. This article has been adapted from David Platt's upcoming book introducing the Microsoft .NET Platform to be published by Microsoft Press in Spring 2000.

David S. Platt

MSDN Magazine February 2001

Proper directory layout for reusable components...



In the application that I am reorganizing, I have a bunch of custom brushes, borders, custom controls, etc. I am trying to understand what is the best way to organize them for reusability as well as maintainibility.

Here is what I am thinking:

1. Have all the reusable components in a class library called WPFCore.

2. Brushes go in BrushStyles.xml, borders go in BorderStyles.xml, and so on.

3. Each custom control has its own .cs and .xaml file.

Please let me know what you think of this organization. Is there a better way to organize them?

Also, I would appreciate your recommendation for #3. This is where Visual Studio automatically does some work that doesn't fit in my model. For example, I have a custom control called MyGridSpillter. If I go through Visual Studio wizard, it creates MyGridSplitter.cs but does not create MyGridSplitter.xaml. Instead, it creates a directory called "Themes" and puts MyGridSplitter xaml code in a file called Generic.xaml under Themes directory.

There must be a reason why Microsoft choose to do so. What is it am I missing? Won't it be better to have a separate MyGridSplitter.xaml? What do I need to do to make this happen?

Thank you in advance for your help.



Unique content within master page based on conditions met


 Hi all-

I would like to present users with unique content based on certain conditions being met as they land on the home page (default.aspx).  The condition logic will be in the VB code behind Page Load event. The content will go in a content placeholder as specificed from the master page. 

However, the content change wouldn't be something small (ie making a panel or label visible or not) but rather it will be different HTML,  Divs and databound gridview content.  The HTML content will be stored in the database.

Can someone point me in the right direction for best practices on how to accomplish this?


Unique ID throughout entire request



I am hoping somene here could advise me on a better solution to my present problem.  First a little background information on the application. 

I have a web application using the 3.5 framework.  The structure of this application is as follows: UI -> WebService   -> Business Layer -> DataAccess Layer.   What I want to accomplish is for every request (click on a link or button) have a unique identifer that follows this request through its entire lifecycle.  This unique identifer can be accessible anywhere within this request.  We use Response.Redirects which could easily be changed to Server.Transfers (although I do not want to do that) but  the problem lies with the web service calls.  Currently, a GUID is set in the ApplicationRequest.  This GUID checks for a guid value in the RawURL and if so, assigns this value to a HttpContext Item.  If not, HttpContext.Items gets a new one created.  However, this idea is wrong and will need to be revisisted.  The bigger problem is with the web service calls.  Without changing every web service method signature, and every call for that matter, is there a way of getting this GUID there.  I created a web method in every web service so that each time I instantiate a web service object in the UI, before calling any

Unique text value in databse column


Hi Everyone!

I know this is probably a very basic question but how do I keep a column's text values unique in SQL server (ie for a unique username)?  The column is not an integer it's varchar(50), and it's not the primary key but I could make it the primary key if recommended.

The front end could handle it;  where the user would enter text, it's validated, then a query is done to see if that username is available.  If so, then user can decide to choose it and an insert is done, if not they pick a new username and process repeats.  With this approach, the responsibility of keeping the value unique solely rests on the front end, nothing on the database side.

Is this the correct way to handle this? 

Thank you!


Visual Studio 2005: Create Reusable Project And Item Templates For Your Development Team


Visual Studio 2005 introduces a new model that lets you define your own project templates and starter kits, something developers have been requesting for some time. Here Matt Milner shows you how to consume, create, and customize these templates.

Matt Milner

MSDN Magazine January 2006

Visual Studio .NET: Building Windows Forms Controls and Components with Rich Design-Time Features, P


This is the second of two articles discussing the extremely rich design-time features of the .NET Framework. Part 1 discussed the basics, showing you where to start and how to extend your control implementation through attributes and interfaces, as well as their effects on the property browser, code serialization, and other controls. Part 2 continues the journey by concentrating on design-time functionality that you can implement beyond your components and controls, including TypeConverters, UITypeEditors, and Designers. It would be impossible to cover everything you can do in two short articles, which is a testament to just how all-encompassing and flexible the design-time capability of the .NET Framework is.

Michael Weinhardt and Chris Sells

MSDN Magazine May 2003

Visual Studio .NET: Building Windows Forms Controls and Components with Rich Design-Time Features


Visual Studio .NET provides support for designing rich features into your controls and components, allowing you to set properties, set form placement, inherit from base classes, and much more. So how does Visual Studio .NET do all this? What does the Windows Forms designer do? What's the difference between a control and a component? How does Visual Studio integrate your controls so that they can access features of the .NET Framework?In this article, the authors answer these common questions by building a clock control and taking the reader along for the ride. In building the control, hosts and containers are illustrated, the property browser is explained, debugging is discussed, and a general overview of the design-time infrastructure is presented.

Michael Weinhardt and Chris Sells

MSDN Magazine April 2003

Contexts in .NET: Decouple Components by Injecting Custom Services into Your Object's Interception


The .NET Framework can use contexts as an object's execution scope and intercept calls going to and from the object, similar to the way COM+ provides component services. What is new with this mechanism is that the runtime allows developers to take part in the interception chain and add powerful services, thus extending existing component services. This in turn decouples the business logic from the system plumbing and simplifies long-term maintenance. Presently, .NET contexts and interception are undocumented aspects of .NET. This article presents the underlying interception architecture and message processing, explains custom context attributes, and walks through a custom interception-based component service.

Juval Lowy

MSDN Magazine March 2003

.NET CLR Profiling Services: Track Your Managed Components to Boost Application Performance


The Microsoft .NET platform provides you with a rich set of services for building profilers and application monitors for applications targeting the Common Language Runtime (CLR). These services expose runtime events that occur during the execution of a .NET application. They can be used to obtain information about managed code being executed under the runtime. This article describes the .NET CLR Profiling Services and shows how to use the services to build a simple profiler that will provide hot spot information for any .NET application. The sample profiler can easily be modified to suit other profiling and monitoring needs.

Anastasios Kasiolas

MSDN Magazine November 2001

Windows XP: Make Your Components More Robust with COM+ 1.5 Innovations


The next version of COM+, COM+ 1.5, offers many improvements over COM+ 1.0. A comprehensive user interface that displays more data for each application as well as complete support for legacy components make the management of existing applications easier and more efficient. Enhanced queueing support provides more flexibility for managing queued calls, and pooling and recycling means better application lifetime management. Application partitioning in COM+ 1.5 surpasses that offered in COM+ 1.0, and transaction isolation can be configured for safer transactions. COM+ 1.5 also allows you to expose any COM+ component as a Web service, as long as it meets certain criteria. This article discusses these and other new features in COM+ 1.5 that take care of much of the plumbing code, allowing developers to concentrate on business components.

Juval Lowy

MSDN Magazine August 2001

Visual Basic: Inspect COM Components Using the TypeLib Information Object Library


The built-in Object Browser in Visual Basic, like other component browsers such as OLE View and XRay, is one of the more useful tools. But an even better tool would be customizable. You can build your own type library browser using the TypeLib Information Object Library (TLI), a set of COM objects designed to allow programmers to browse type libraries programmatically. This article explains type libraries and the TLI object model, and shows how to use the collections to get information about objects, leading to the creation of a custom type library explorer.

Jason Fisher

MSDN Magazine December 2000

SQL/MTS: Automating the Creation of COM+ Components for a Database Schema


Using Microsoft Windows DNA architecture as a guideline, it's possible to create scalable multitier database applications with COM+ and Microsoft Transaction Services. In fact, you can use existing table definitions to automatically build the MTS/COM+ business logic layer and data access components for your application. This article will walk you through the development of database transactions by mapping the transactions to automatically generated MTS/COM+ components. This technique can greatly simplify the task of creating components for a large project.

Aleksandr Mikunov

MSDN Magazine July 2000

ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend