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

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

Managing business object locks on application level

Posted By: DigiMortal     Posted Date: August 29, 2010    Points: 0   Category :ASP.Net
Today I worked out simple application side object locking solution for one server scenario. My motivation came from ASP.NET architecture forum thread How to solve concurrent site issue where one user asks for locking solution that works without changing database. Here is my simple and primitive solution that should help this guy out. I added also sample solution to this posting. My solution is simple: Create class for locked items. Create manager class that holds locks and manages them. Clear locks when session ends. Create page to release all locks. If you need something more serious then you should keep locks information in database or better than that - use some lock server. Also you may consider developing WCF service. LockItem class As a first thing let's create class that keeps lock information. I call this class as LockItem. This class doesn't hold references to locked objects - only type and ID as there are many business layers that doesn't use globally unique identifiers for objects. public class LockItem {     public Type ObjectType { get; set; }     public int ObjectId { get; set; }     public string SessionId { get; set; }     public DateTime LockedAt { get; set; } } LockItem class also contains property for session because otherwise it is not possible to kno

View Complete Post

More Related Resource Links

Business object design in master details.


Hello guys, I have the following scenario,

  1. There is a master business object containing 40 fields
  2. 2 separate child business objects
  3. If I update a child record, I have to update master's 'Last modify by' status along with 3 or more fields in master
  4. For this purpose, I don't want to initialize a separate Master class object (as most of the fields are unused/wasted)
  5. The 'last modify by' also gets updated if the records in master get updated themselves

Currently I have separate business objects for master table, Child 1, Child 2 etc.

How do I control this in my business object design ? Do I break up my master object ? Say I extract last 'modify by ' into a new class, through inheritance or some other way ?

Is there a way that whenever child gets updated I use a 'small' class to update Master status only and whenever the master itself gets updated I do the same.

Problem is that I am having redundancy in my small class (Master class also contains 'Last Modify By ',

What would you advice. Please have your say. Thank you.

Edit  I am using webforms guys.

CLR Inside Out: Managing Object Lifetime


Although the .NET Framework provides a managed execution environment, it is important to consider object lifetime management and write code that uses and releases resources correctly. The CLR team shows you how.

Tim Fischer

MSDN Magazine November 2007

ASP.NET: Nine Options for Managing Persistent User State in Your ASP.NET Application


ASP.NET provides many different ways to persist data between user requests. You can use the Application object, cookies, hidden fields, the Session or Cache objects, and lots of other methods. Deciding when to use each of these can sometimes be difficult. This article will introduce the aforementioned techniques and present some guidelines on when to use them. Although many of these techniques existed in classic ASP, best practices for when to use them have changed with the introduction of the .NET Framework. To persist data in ASP.NET, you'll have to adjust what you learned previously about handling state in ASP.

Steven Smith

MSDN Magazine April 2003

Managing Custom Configuration Options for a SharePoint Application

Learn how to store configuration data in various ways, including inside the web.config file on front-end Web servers, by using the property bag on various Windows SharePoint Services objects, storing configuration data within SharePoint lists, and by using the hierarchical object storage.

Video: Business Connectivity Services for SharePoint 2010 Application Programming Interface (API)

This video provides an overview of development with Business Connectivity Services. (Length: 3:07)

Developing common content pages that can be hosted at the Web application or TLS level and can be sh

We are working on a Publishing site and planning to provision each client as a sub-site under the top level site (TLS). All of these sub-sites will almost have the same web pages and based on the client specific requirement they can customize these pages if needed. To meet the above requirement: I want to develop common content pages or application pages with the publishing capabilities and host them at the TLS, making these common pages available for all sub-sites under the TLS with the following requirements. ·        Sub-sites will not have any of these pages on their own and there would be only one central copy of this common page at TLS. ·        The sub-sites should be able to access these common pages in their context that means using the sub-site specific Master page & Themes. ·        When there is a specific customization is required such as adding a different web part, or updating the HTML data on the page, the common page will be edited in the sub-site and eventually making its own copy of the common page and resulting breaking apart from the common page for any future changes. ·        When the user edits the page he should be alerted that customizing this common page will make a local copy an

trust outlook 2003 application object when sending email c#

i am using outlook 2003 to send email but this outlook version always not trust application option so that before send email, always prompt a security dialog box to ask me to send email or not. how can i trust all outlook application object using vs 2008 or set in outlook 2003 anyone help

separating service level data from business data in servcie contract

Hi I have read that service level data (like requestId, client name etc. required for tracing/auditing) should be separated from business data(required for actual business operation) ie. differencing "Message Header" from "message payload". When we say 'separation", does that mean service level data should not be defined/declared in my contract class. If so how clients will know what header info they have to pass? I can't enforce header info as part of my contract. i think http://blogs.microsoft.co.il/blogs/bursteg/archive/2006/04/23/141.aspx this is based on assumption that clients are aware what they have to pass in header. Regardssinghhome

How to all the Subsites and Site Collections under a top level site collection using client object m

Hello Everyone, I need to know how to get all the subsites and the site collections under a top level site collection using client object model in SilverLight. When I use WebCollection webcoll= ctx.Web.Webs I'm getting the getting subites but i'm not getting the RootWeb and Othe SiteCollections created under the Top Level site collelction.

CommunicationException when serializing my business POCO object

Hi! I'm currently blocked by a strange problem, here is the situation: I've a client and a server, running with .Net 4.0 framework. I'm using Entity Framework server side, and WCF to communicate between client and Server. I use POCO object on my Entity Framework model. One month ago, I had a problem: In some case entity framework has already loaded an object and then want to return it when the WCF service is queried. Example: An User has a collection of Orders, and Orders knows which User handle it---> cyclic references I searched online how to resolve this and I found this: http://chabster.blogspot.com/2008/02/wcf-cyclic-references-support.html It worked like a charmed for me until now. I can get data from the server without server, ... Now I'm trying to call my Save(User) method from the client to the server, and I get this error:   System.ServiceModel.CommunicationException was caught Message=There was an error while trying to serialize parameter http://tempuri.org/:User. The InnerException message was 'Type 'System.DelegateSerializationHolder+DelegateEntry' with data contract name 'DelegateSerializationHolder.DelegateEntry:http://schemas.datacontract.org/2004/07/System' is not expected. Consider using a DataContractResolver or add any types not known statically to the list of known types - for example, by using the KnownTypeAttribute attribu

Error selecting "Business Data Connectivity" service application in MSS 2010 with WCF hotfix on W8R

I'm getting "BDC Metadata Store is Currently Unavailable" when navigating to the External Content Types object in SPD 2010. Hot fix is installed.  No errors in the eventlog? 

Application level event without global.asax

I have a need to add an application level event (like Application_Start) but not in global.asax.  The reason that I can't use global.asax is because this is a web application for which I don't have source code but I want to add some functionality to it.  I need to insert an application start code and was wondering it there was anyway to do it.  I'm not sure that if I add a class or aspx page to the sie if it will dynamically compile since this is a web application.  I know this is a crazy request but let me know what you think.Also, this web site was written in .NET 2.0.Thanks.

Sharing Application-object in subdirectories


I have a large constantly growing website, which I would like to re-organize into subdirectories. However, it seems that if I create a subdirectory and put some pages there, I'll loose the Application object. Obviously ASP.NET handles each subdirectory as a separate application. Is there a work around for this? Configuration option or something?

Any other suggestions how to organize the site?


WPF TreeView child nodes - collection is not a member of the first level nodes object



I was wondering if i could use a TreeView to display data from 2 separate collections where both collections are members of the same object. For example i have a view model that has 2 observable collections:



Each model has a property Brand which specifies the brand for each model. What i want to do is bind the first level to the Brands collection and the second level to the Models collection and specify a filter.

Thanks in advance.

how to store the values in a object variable (package level scope) in a script component

I have declared a variable of object type with package level scope.  I want to assign values to this variable inside a script component.  My object should hold 5 columns in a row.  How to implement this ?

Casting transparent proxy of office application to the real object



1. I am using .net remoting to accept an office application (Excel,Word,PP)

2. the server is a simple office addin that supplies the application object

3. the remote object is application object wrapper (to enable MarshalByRefObject inheritance)

4. When the client gets the application object its type is Proxies.__TransparentProxy for all 3 applications

5. The problem is when trying to cast the transparent proxy to the real objects types

Microsoft.Office.Interop.PowerPoint.Application for PP

Microsoft.Office.Interop.Word.Application for Word

Microsoft.Office.Interop.Excel.Application for Excel

 the cast fails for Word  and PP whereas for Excel it works perfect

6. Since I also own the server code (the office addin) I can check what is the application

System.StackOverflowException occur while Serializing Business Object which implements INotifyProper

I try to implement the NTier scenario for a sample application using Remoting, but while try to implement this it giving me the error that SOAP serializer doesn't support serialization of generic List of....blah blah,,,
So I decided to implement my own serialization process like mentioned below and it works fine,

This is the Interface of the DataCentric Component
 obj As
 Custs) As

'This is where I want to talk to database(haven't implemented yet in this code)<br/>


 obj As
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