Architecture :: Using Static Methods To Build User Objects And Various Other Objects?
Jun 21, 2010
firstly a static class only ever exists once and is not an instance. Any static members (ie static int NoOfPeople;) is stored in one place and is shared between all sessions (like the old global variables).
Now static methods is where i'm not 100% sure. If I have a static method that doesn't use any other static members could this cause inconstant results, example (this is a fairly pointless method but just a quick example of the top of my head)
[Code]....
So in this example if two sessions (or threads) were to call this at the same time - would they both get back the expected results, because the method only uses private data (a, b and totalToReturn).Im sure this sounds a little simple but I will be using static methods to build user objects and various other objects that there will have to be a 100% garentee that the objects will not get mixed up between sessions and the wrong things return to the user.
have some Objects, lets say Employee and Role defined as below and I have defined relationships in my database that gives me a list of objects say employees and thanks to my framework each employee object also has a Role object linked via the RoleIDID, UserName, Password, Email, RoleIDRoleID, RoleNameSo in code I can do something like this
I know how to bind a simple objects to a dropdown list. However I am having problems binding my objects which contains sub objects to the control.i.e. with simple object i just do ddl.DataValueField = "myproperty" with my objects they contains sub objects which i want to bind. I have tried ddl.DataValueField = "sub-object.myproperty" which doesnt work.
im developing a silverlight project using silverlight 3, vs2008 and linq2sql. when projects starts, im storing all the data from database into some static list variables. so when ever i need data, im reading it from those static list variables. all i want to know is, is it good to store data in static list variables and use it when ever necessary or is it good to get data directly from DataClassesDataContext object like db.mytable. which is the rite and fastest way or retrieving data. i mean which will use less connections to database?
designing Business Objects. What a business object class can contain ?
I have looked many sample codes and articles. Some only use properties in them. Some use private members, properties and constructoers. As more I am reading becoming more confuse.
Some sample codes that I checked were making functions in BO classes as well. what a BO class should contain and what is its purpose. Should there be functions in them as well ? If yes how they can be differentiated from Business Logic class functions.
I am new to OOP. Kindly guide me why making business objects is good ? how and what benefit they bring in development. As I am new to OOP if please you decidable with example in simple way will be great help to me.
I think using this kind of creational pattern makes the application not scalable as the same instance will be shared among all the concurrent users.Is it correct?
Is there any better way to abstract the creation and maintaining instance of business objects
Class code:namespace Microsoft.IT.RelationshipManagement.Internal.CISF.Infrastructure { using System; using System.Linq; using System.Text;[code].....
I am currently in the process of creating data transfer objects (DTO) and I am having following queries egarding the same:1. There are some of the Properties of my DTO that will be used only in some places and So in other place it will be an overhead to populate these properties. How should we handle this design problem?2. Should we be including the Aduit information(such as the logged-in person's ID) in the DTO? If not, how do we transfer this audit information between the various tiers of the application?
I have an application that uses DataContracts/DataMembers and Serialization to store information entered in a tab control. There are 8 tabs in the control (therefore 8 aspx pages). The final tab is used to write the information to disk.I am trying to understand: When should serialization be used in a web app? The objects are stored in memory not on disk. Is this another means of passing objects between aspx pages? If so when should serialization be used vs. session objects? How long is the serialized object retained in memory?Can I get a simple example of how to serialize in one page and deserialize the object in another page?I've read many blogs regarding serialization but have yet to find a simple example and none of them explain when serialization should be used vs. session objects?
I am developing a web application, which has Data Access Layer and this layer has only one class, in which all methods are static methods like static Insert, static Update, static Search. It has no properties. I am using these methods in my Bussiness Logic class for my users who are visiting my website.Now my question is : 1. Is it right to use static methods in this scenario ?2. What will happen if 10 users call Insert method at the same time ?
I'm working on a project in which we have a database, data layer (entity framework), business layer and web/UI layer.I want to use ASP.NET Dynamic Data for the web layer, but don't want it to access the data layer or database, as I want it to be purely running off business logic, and not directly accessing the data.However, it appears that Dynamic Data only allows Linq-to-SQL or entity framework data sources to be used.Has anyone used it with business-layer objects instead?
Lets say I am doing a shoping cart. I authenticate the user with a session variable.For example:
If(Request.IsAuthenticated) // Here I want to add to the shoping cart. // Can I do the following Session["Cart"] = "Washing Machine"; Now will this Session["Cart"] value which is washing machine here be unique to diff customers?
We have a wfc layer that wraps the business classes and database access and use a client that lives on the database layer. Amongst our group we are attempting to form standards. Some want to have the client call the web method and pass the page they are requesting and the page size. Pass that to the database and then page in SQL Server use RowNum.Some want to cache the full list of objects in http cache on the service tier and page in memory. They concern here is memory use on the server.
Which would be best for a medium number of users with potentially large number of records to manage (say 30K) Is it better to cache them all in memory and work from there or page at the database as the application scales?
I use asp:Login control, user can login properly, but while checking user Profile information within LoggedIn event of Login control, all of the fields in the Profile objects are empty. Also, User.Identity.IsAuthenticated always returns false. But, all of these issue solved while navigating to another page. Why User.Identity.IsAuthenticated returns false, even user logged-in properly? And, is there any way to get user's profile information within LoggedIn event of Login control?
I've got a website and we just had a huge jump in traffic. Now all of the sudden we're getting sql parameter errors left and right. We switched to a new sql server a few weeks ago and everything has been fine but the added traffic seems to be breaking us.
I have a data access class that is called when each user trys to logon. It runs through several tasks before finally updating the users last login date and forwarding them to the administration section.
What I'm seeing from the trace logs suggests that when I'm logging in the first several tasks are using my data (lets say user=birk pass=word). But at some point the accessor class starts sending over the data from someone else who's trying to login (lets say user=abcxyz)
Every connection we make to the server is closed when we're finished with it. I'm nulling out all of the accessor objects when I'm finished with them. But somehow different user data from different sessions are making their way into other peoples instances of the object.
I'm not using session/application/cache/viewstate to store the objects so I'm not really seeing how they could edit eachother... Its just really weird and I'm not sure how to even go about researching the problem.
This is roughly the accessor class... I trimmed out some of the parts that weren't reliant to the issue
I'm working on a school project where my website idea of choice is one that creates mixtapes (well, you'd download them or burn them from the site, but I need not implement that). The site allows its users to create 6 song mixtapes that are then published into a transaction table.
That part I am fine with. Making the selection page is tough. The way I have it set up is that there are 6 columns with 3 drop downs. First the user picks the genre, then the artist WITHIN the genre, and the song from the artist (GENRE > ARTIST > SONG). So, I would need the ARTIST drop-down list to populate once a SelectIndexChanged occured on GENRE. Same with SONG, but it would use ARTIST instead of genre.
Repeat that 5 more times and click a button, and it would create a table and post it to the database.
I have thought up of 2 ways to go about it.
1) Create a session that expires once the user clicks the "create" button. This would be sluggish, as there would be about 12 page refreshes, and 12 session variables I'd need to store.
2) AJAX/jQuery. This way would be awesome, but I have no idea how in the world to write jQuery in such a manner that on an event it calls a method from a code-behind file.
One thing I found out before my brain went to mush (I've been working on this for 6 hours now), is that one way people have done this is to call a non-related .aspx file that serves as a method. The idea is ok, but how do I go about getting it to update objects on the page the user is currently on? I'd believe there is a simpler way to do this, and am looking to you guys for some guidance on how to dynamically update dropdownlists.
public static class PageExtensions { public static int GetUserId(this Page targetPage) { var user = Membership.GetUser(targetPage.User.Identity.Name); return (int)user.ProviderUserKey; } }
Now in a page I need to use this method in a static WebMethod, so I have added another 'extension method' to PageExtensions:
public static int GetUserId() { return (int)Membership.GetUser(HttpContext.Current.User.Identity.Name).ProviderUserKey; }
and I call it as follows in my WebMethod: PageExtensions.GetUserId()
I did some research after posting. All I found was simple examples for no-layer architectures, like connecting to a database from your aspx page, so, in a corporate environment, it is unnaceptable.
I need to call a server-side method (using ASP.NET Ajax) in a 3-layer architecture.
For example, my Default.aspx contains a method LoadProducts().
[Code]....
[Code]....
This cannot change. There is no way to convert Business and Data layers to static.
How can I call the LoadProducts() method using ASP.NET Ajax?