So I used this tutorial to generate my poco classes which I am to use throughout my aplication.. the problem is that Im not supposed to modify the generated cs files cause they get autoregenerated... How do I add attributes like [Required] and stuff like that??
Currently im using EF and using its datacontext directly in all of my actions, but since i started reading about loose coupling and testability im thinking that thats not the best way to go. Im trying to understand all the pro's and con's before i start refactor all my current code.
Problem 1:
Considering that every entity needs its own repository, and thus has to setup its own connection to a datasource (lets assume a database using EF), wouldnt that give alot of overhead if i need data from 5 different entities on a single page?
Problem 2:
What im seeing aswell in all the examples which i found online is that most people (even people like shanselman) implement the repository pattern using the entity classes which are generated by either LINQ or EF, doesn't this defeat the purpose of repository pattern with regards to loose coupling? On the other hand, what is the alternative, using POCO classes in combination with for example AutoMapper? (this scares me a little) Im hoping that a few people can shed some light on this, because im a bit confused at the moment if the repository pattern is the right choice for a website.
I am new to LINQ. when we drag tables we get a dbml file and designer file.
For example DataClasses1.dbml and DataClasses1.designer.cs.
Once we have them then we can start using our LINQ Queries.
In my company project I do not see this designer files and instead there are .tt files which were used as templates to greate ABC.generated.cs files. Is this same as designer class?
I'm using Entity Framework to create my data objects. Here's what my designer.cs file looks like:
[code]....
But my validations aren't loaded. If I try to submit the form with no value for Name, I get an error message saying The value '' is invalid. instead of my error message.
I make use of validation with data annotations in my model classes. How do I make sure this annotations are not violated when I validate data in my business layer, before sending it to the DAL? I guess I don't want to define the validation rules in two places (model classes and in my BLL-classes)?
I have a model class which consists of some other classes as its properties.The name class is named Person and has an Address property which is another class and has certain required properties such as City or Line1.The 'required' constrain for 'City' and 'Line1' is properly observed by the server-side validation by the client-side validation seems to be ignoring them.I have properly called Html.EnableClientValidation and have all the required scripts in place.Is there a way to force client-side validation for the described scenario or I'm gonna have to flatten the model class?
Whilst my validation is successful/fine with this control (ValidationMessageFor works) I have been unable to find how to highlight the control when validation fails (e.g. with a TextBoxFor the textbox border goes red if validation fails)
Does anyone know how I can add this behaviour with a custom editor template?
I am using a Gridview to Edit, Delete, and Insert (thru the footer). I am tryng to usr required field validationg a column called qty .When I insert a record through footer validating is working fine.(Add button in footer template)
But when I edit a record and it is validating both footertemplate and edititemtemplate.
I am following the Nerd Dinner tutorial as I'm learning ASP.NET MVC, and I am currently on Step 3: Building the Model. One part of this section discusses how to integrate validation and business rule logic with the model classes. All this makes perfect sense. However, in the case of this source code, the author only validates one class: Dinner.
What I am wondering is, say I have multiple classes that need validation (Dinner, Guest, etc). It doesn't seem smart to me to repeatedly write these two methods in the partial class:
[code]....
This doesn't "feel" right, but I wanted to check with SO to get opinions of individuals smarter than me on this. I also tested it out, and it seems that the partial keyword on the OnValidate method is causing problems (understandably so). This doesn't seem possible to fix (but I could very well be wrong).
I don't know if this has to do with how FindControl works or how scope works. But my base class is having a hard time seeing the fields of child classes. Currently I'm planning have the derived class set a property in the base class, but there are a lot of derived classes, so that isn't a very attractive solution.
I am using EF4 with POCO entities and having problems to update an existing item. In a webbapp I have an ajax function fetching an entity object from the database through EF4. Then i make some changes to it and when I try to update the record in the database I call the Attach-method but it is not saved. I guess this has something do with that I am not in the same context anymore...so my question is how to make an update of a previously fetched record if the context which was used to fetch record is disposed?
I need to know is there any way to separate the classes automatically created by Entity framework. I can not use POCO template. because I have restriction to use framework 4.0 for time being.
In EF4, is it possible to convert a POCO object (created using new MyObject()) to a Dynamic Proxy (like you would get with ObjectContext.CreateObject())?
I have an interesting problem with a WCF Service I am creating. As background fodder my solultion uses MVC 3 RC2 as the web interface. I am developing the solution as an N-Tier application using the Entity Framework 4.0 with POCO Self Tracking Entities, repository and unit of work approach. I am using the STE's more as an advanced POCO since STE do not seem to play well as of yet in the real world as they were meant to and since they do seem to give me better interfacing with the DB through my layers still. Additionally, I am incorporating WCF into the solution as the backend for the models based on info I am reading and the fact that I will need to also access these services via a windows service app on the client computers.
So, I have a datastore which includes my edm and the repositories. The POCO STEs are generated in a separate layer in what I have called my Domain Models. Within my domain area I also have a Core app holding my utilities. I am currently incorporating an additional domain element as a WCF service using the RESTful template. This WCF will be servicing both my MVC controllers and a Windows Service app on the client computers.
Now, on to the problem: Within this solution I have an Entity Set of People (or Person?). Within that Entity set I have a chain of inherited entities as follows Person->User->StaffMember->Provider where Provider is the resultant child. Within my WCF I have a ProviderService, a StaffMemberService and a UserService. In each of these Services one of my OperationContracts is a Get(string id) amongst others. the Get(String id) contract is the one that is causing me problems. Within that Get(String id) contract I do the following for the User:
[Code]....
and for the Provider:
[Code]....
Now, what has gotten me completely confused is that the Provider one works like a charm. But if I use the UserService to call the User of the same Id (Since User is a base class for Provider, this should work) I get an error saying it was a bad service call. (The ProviderService, as stated works and returns all the correct data). When I debug it, the UserService Get(String id) function actually works as expected up to and through the return statement (ie the user variable actually contains all the proper data that I would expect on the call). It is only after the return that I get the web page giving me that error and points me to the help page for the service. (I am using the browser to view the results at this point only). </P><P>I am assuming it has something to do with serialization? But why is it displaying the derived class with all expected data, which yes does include the data not being displayed as a user data, I am calling the data using the same UserId. I am not expecting someone to inspect my code, but to be a traffic cop and point me in the direction I need to look.
I have POCO's in a separate project and now I need Self Tracking Entities. Does anyone know if I need to generate new POCO's that are self tracking and they will replace my current POCO's? Or, do I setup self tracking entities in addition to my current POCO's?
I'm curious as to what people consider better practice, between duplicating model structure in the view model and using a mapping tool to move data between the two, or aggregate the model inside the view model, i.e. have a property on the view model class that is a reference to the actual model. Which is considered a better approach in general?
I am looking for a solid tutorial on using the Entity Framework with POCO (ie. not using the designer) using MySQL as the back-end. I am looking for something that is semi-in-depth covering stuff like attributes (like how to map a database table/field name to a class/field name that is different). Also I am looking for C#, not VB. Does anyone know of any such tutorials?
I have a Consumer class and a BillableConsumer : Consumer class. When trying to do any operation on my "Consumers" set, I get the error message "Object mapping could not be found for Type with identity Models.BillableConsumer.
From the CSDL:
[code]....
Is this because I did not specifically add the BillableConsumer entity to the object set? How do I do that in a POCO scenario?
I was wondering if anyone can point me in the right direction? I have a POCO model and I am using Code First CTP. In my application, I set the database to be recreated whenever the model changes.
I would like to write custom functionality to access the model (POCO) metadata same way as EF sees it and use that to generate some source files (using T4). I would like to access the processed model not having to worry about finding properties that hold primary keys or any other conventions (implicit or not). What is the way to go about it?
how to use validation controls with item template(not editItemtemplate). I want to display text boxes irrespective of mode so i am using textbox inside itemtemplate.There is a save button which will be clicked after entering prices for all the rows.
I have a grid with two columns. In one column the user can enter the price and for that i use textboxes inside ItemTemplate. So there is not editmode here.It will always in the edit mode, I meant the user can enter values always.After entering values user can click on Save button and on this i need to validate the values, i meant the prices the user entered. I tried using validator controls inside ItemTemplate column but it is not working.
I want to put POCO object to Velocity cache. How can I serializable ICollection to Velocity cache, or exclude ICollection from serialization?
I got this exception
Type 'System.Collections.Generic.ICollection`1[Model.Collection]' cannot be serialized. Consider marking it with the DataContractAttribute attribute, and marking all of its members you want serialized with the DataMemberAttribute attribute. If the type is a collection, consider marking it with the CollectionDataContractAttribute. See the Microsoft .NET Framework documentation for other supported types.
I am using one datalist control for uploading multiple images.I hv used one Asp:FileUplaod Control and one button in one itemtemplate.I am using reqired field validator and regular expression validator for file upload cntrl I am assigning validation group for both of them on ItemDataBound event of my datalist so that each upload cntrl hv same validaton group as required field and regular expression validator.Now what i want to do is - i want to show my error message in validation summary which is right at the top of the page.I want one know how to write javascript that will assign validation group of my control in datalist on which i click ?