I have a misunderstanding somewhere with the Entity Framework. This code is from my unit testing:
Public Sub UpdateRosterLinkTest()
Dim target As PlayerAdmin = New PlayerAdmin()
target.PlayerAdminManager = playerAdminTestManager
target.Team = playerAdminTestManager.GetAirForceMensBB()
[code]....
When I run this code, I can see the changes saved to the SQL Server this pulls from (RosterLink = Roster Link, like I set in the unit test).However, my unit test is failing, because team.RosterLink is still Nothing. The function GetAirForceMensBB() returns the Team with TeamId = 12434:
Function GetAirForceMensBB() As DAL.Team
Return (From team In Container.Teams Where team.TeamId = 12434).SingleOrDefault
End Function
I'm sure I'm using the entity framework incorrectly and it probably has something to do with the fact that I am calling the PlayerAdminTestManager in different places, but I don't understand why. Although, I set the PlayerAdminManager to be the PlayerAdminTestManager. PlayerAdminTestManager extends PlayerAdminManager, fyi.Why is team.RosterLink not showing the update from UpdateRosterLink?
EDIT:Container is my ObjectContext. This is how I access the information stored in the database.Container.Teams represents my Teams table.
VB .NET 4 WinForms application. I have a (DevExpress) grid bound to an IEnumerable(Of MyClass). Whenever a new row is added, the ID defaults to zero (0). On trying to SaveChanges, EntityFramework doesn't realise that being an identity field means it should ignore any contents on insert and just insert the other values. I can't specify null / Nothing because it just keeps the ID as zero. I can add and save instances of MyClass manually, but I'm trying to get it to work where the grid handles adding/initialising/etc new entries. As far as I can tell, the problem is not with the grid but with Entity Framework and the generated SQL and entity classes. {"Cannot insert explicit value for identity column in table 'MyClasses' when IDENTITY_INSERT is set to OFF."}
I am using MS Visual Basic Express 2010 and trying to generate "ADO.Net Entity Framework" entities from an existing local SQL Server Express database.
Using the "Entity Data Model Wizard" I am asked to configure a connection. Here I prompted to choose a "Data source" and given two options 'Microsoft SQL Server Compact 3.5' and 'Microsoft SQL Server Database File'. I select the second option.
I'm then prompted for connection properties, I have to enter the "Database file name (new or existing)". Here I browse to the SQL server database file of interest (found using Management Studio Express) namely[code]...
Whilst going through the "ADO.Net Entity Data Model" wizard, I select 3 tables from within a Database to add to my edmx file, and when the file is generated only one of the three tables is there. There was no error or warning to explain why the other tables haven't been added. If I try and add one of the failing tables on its own, again, nothing happens.I am using VS 2010, SQL Server 2008.
Any ideas as to why these database tables are failing to create? I realise there isn't much detail to this question, but there isn't much detail to the situation - It really is a database with 3 tables, of which 2 are failing to create through the wizard with no error.
We need to store a list of data we pull from another table that relates to one of our models. (We are too deep into build to add this relationship to our DB where it should be.) When we attempt to load this list in a property of the model that needs it.We load this list into a dropdown in a view. The error occurs trying to load this list into the model in the controller. The true caveat is that we have a unique dropdown list for each record in our table in the view.
Our Class: Public class OurModel public property ID As Integer[code]....
Error: LINQ to Entities does not recognize the method 'DB.ModelTable get_Item(Int32)' method, and this method cannot be translated into a store expression.
UPDATE: The issue appears to be that LINQ is trying to do something with a the DBContext of a query I do previously in this controller. The error is referencing DB.Employee not DB.Position which is what I am querying.
I have two properties ("FIRST_NAME" and "LAST_NAME") I need to access as a single property (e.g. "FULL_NAME"). Is there a way for me to add a property to my entity model that contains the combine value of FIRST_NAME and LAST_NAME?
I'm pretty new to the EDM, so bear with me. I have a windows form that has a DataGridView on it that's bound from the EDM I created. I figured out how to update my changes fine, but it's when the user creates a new row that I'm having a problem.I tried numerous ways and many google searches, but came up with nothing so far.
[Code]...
Error (occurs when calling _Context.SaveChanges()): Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded. Refresh ObjectStateManager entries.
in a new project I thought I would try to integrate the new Entity Model Framework, but am having some issues/problems and would like to know if there is a solution or workaround that will let me insert a record into a table that has an identity property.At first I thougth it might simply recofnize the storedprocs that I have for insert/update/delte actions, and was a bit discapointed when generating the model ignored all my stored procs. So I thought wll heck maybe it just generates a nice insert method for me. Lets see.So I referenced my model and found that for the table (entity) there was an insert action (method) that had been generated, however what i found is that it explicitly added the primarly key field - which was based on an identity property and will not accept an explicit insert value.So I guess 2 questions
1. How do we work with identity properties
2. How can we take advantage of the performance and securtiy advantages that stored procs offer with SQL server?
I am working on a silverlight project in which i am using the entity data model. I have a consol application in the same solution through which i am creating the database table at runtime. Now when i moves to silverlight page i need to Communicate (load data from newly created tables).But problem is that without updating the model how i will able to communicate with that table at runtime using entity framework model.
In entity framework we can use 3 approaches model first , code first , database first but each one of them needs manual hand touch(means creating database or create model or write the POCO class codes or entity class codes) before proceeding to the next step ( using EF in context ).What if I want to create database and tables and table relationships programatically and still want to have to features of EntityFramework 4.3.
To be more specific ,from this example http://support.microsoft.com/kb/307283 we can create database , tables and everything using SQL command but we can't have the advantages of entity framework. So if we want to have that what should we do? To give the ability to create dynamic table fields those steps will not be sufficient. In all 3 steps database , table and table columns are fixed. There is no way that a user can create new tables or columns dynamically. http:[url].... in this post , it shows how to create manual db, tables and etc using SQL but it is based on ADO.NET but I want Entity Manager to do that.
I want to have specific code executed for each entity that is being updated. So, if it is a "phone" entity I want to trigger one piece of code but if it is a "buildings" entity I want to trigger another piece of code. In pseudo code I want to do something like this:
For Each entry as ObjectStateEntry in DirectCast(sender, ObjectContext).ObjectStateManager.GetObjectStateEntries(EntityState.Modified) If entry.entity("phone") Then
I would expect to see the path.Path include the new record, however, I also notice that tempnextgen also include the new record. Can anyone help me out on this issue? Why the tempnextgen got updated as well, how to prevent this unexpected operation?
I am trying to build a survey engine from an existing database design which is like this.
[Code]...
The line Order By Key.RecordOrder throws a null reference exception and I can understand why. Can someone advise on how to resolve this by just modifying this one query? I am fairly new to LINQ and the necessity to write this project
I have an issue with an Office addin I'm working on, which is implemented for Office 2003 & 2007. The addin is written in VB.NET 3.5 using VSTO.The problem comes from some external code which automates a mail merge, opening the mail merge template, merging and then closing the template document. The close is done with this code:
Because of some logic in my addin, instigated from the Interop.Word.Application.DocumentBeforeClose event, a message box is opened which prevents the Office document from closing, which breaks the automation.
Is there a way for me to determine the SaveChanges parameter (if any) on a Close within an Office.Interop.Word.Application event, such as DocumentBeforeClose? I'm trying to capture this parameter and determine if it's set to wdDoNotSaveChanges so that I can work around this problem.
I want to update an entity without loading the entity from the database first. I've accomplished this but only by knowing all of the entities properties and then using the "attachto" method. My issues is i don't want my app to need to remember all of the properties. Example:
Entity Splitting: one class, two or more tables.Here is how it is done in C#, but I need to get it working in vb.net.One more thing: the class name and table columns do not match, so I have to be able to map that out, too.I have to get this to work this way because the place I'm working at right now is a vb.net only shop and the database schema is fubar, but they have so much (millions) of lines of code done directly against the database in both asp classic, vb.net, AND asp.net webforms that changing the schema right now is not realistically possible.
I am trying to jump from ASP Classic to asp.net. I have followed tutorials to get Entity Framework and LINQ to connect to my test database, but I am having difficulties figuring out ExecuteQuery(). I believe the problem is that I need an "entity class" for my database, but I can't figure out how to do it. Here is my simple code:
Dim db as New TestModel.TestEntity Dim results AS IEnumerable(OF ???) = db.ExecuteQuery(Of ???)("Select * from Table1")
From the microsoft example site, they use an entity class called Customers, but I don't understand what that means.
I am trying to create a generic typed class, but am running into a problem. Here is my basic class definition:
public class QueueObject<T> where T : System.ServiceModel.DomainServices.Client.Entity { public string LoadingMessage { get; set; } public System.ServiceModel.DomainServices.Client.EntityQuery<T> Query { get; set; } }
I am trying to add instances of this class to a queue
This doesn't work. I get an error saying that QueueObject cannont be converted to QueueObject. I don't understand because MyEntity inherits from Entity.
Public Class QueueObject(Of T As System.ServiceModel.DomainServices.Client.Entity) Public Property LoadingMessage As String Public Property Query As System.ServiceModel.DomainServices.Client.EntityQuery(Of T) End Class
Assuming an architecture as such.MODEL > BLL > DLL
Trying to implement lazy loading in my MODEL I have run into a circular dependency between my MODEL and BLL..Basically imagine a property in my model that I want to implement as follows
Public Readonly Property ProjectCategory As ProjectCategory Get If Me._ProjectCategory Is Nothing Then Me._ProjectCategory = ProjectCategoryBLL.GetProjectCategoryByID(Me._ProjectCategoryID) End If
[Code]...
I have my MODEL, BLL and DLL in separate projects and because of the fact that my BLL references my model I can not reference my BLL from my model as this would create a circular dependency.
I'm quite new to MVC and while I've been trying to follow the best practices , I believe I may not be understanding certain fundamentals of either
-a. Using models and viewmodels appropriately
-b. Passing models into a controller for validation purposes.
The general purpose of my program is to select a stored procedure from a list of stored procedures, create a form where the user can fill out all the appropriate input variables, and then to execute that stored procedure. The tool is for non-technical people, so I'm eventually going to have to do a good deal of input validation.
As such I have four models: A Script Model, a Parameter Model, a Parameter Enum model and a Query Model, and two viewmodels: a paramviewmodel that generates the form to fill out, and a scriptviewmodel that creates a listbox filled with the possible script choices. I am using a prewritten database system to fill out my viewmodels in an init method in my controller (which I'm not sure is the proper way to do this?).
The viewmodels are as follows:
Imports System Imports System.Collections.Generic Public Class ScriptViewModel
[Code]....
I'm trying to work out the functionality. Also, I think this may be too much code in the view, even though most of it is display code.
Anyways, I have two main questions. One, does creating a model in my controller, calling an init method on it, and then passing it to the view make any sense in an mvc context (if not, how would I proceed?). Two, if I want to perform validation on the form I output in my htmlhelper, but I want to use my query model validation (and not my paramviewmodel), how can I do that? Most of the examples I've seen involve a controller that recieves an appropriate model variable, and the binding is performed outside the controller itself. They then just check modelstate. Is there any way I could do something similar here?
Edit: Is there any way I can make the syntax highlighting less crappy?
I am trying to figure out the best way to implement a certain part of my model.I have an entity named Customer which has CustomerLocations (1-*) which have SalesOrders (1-*) which have Invoices (1-*).I want to allow them to have multiple addresses (Billing and Shipping) per customer and per location. I want to store those values in the sales orders and invoices, not a foreign key, what if they delete one of their addresses later down the road.I have tried complex types, but then they can't have multiple, can they? And having an Address entity, customer --> address (1-*) is ok, but a bit clumsy. How would you have a collection of billing and shipping addresses.?
I have a repository class that defines some basic Get/Save/Delete methods. Inside these, I use NHibernate to do the work on my business entities. For example:
[code]...
However, on my User class I have some properties and collections of other objects that ideally I'd like to be lazy loaded. But of course, the ISession is created and disposed within the repository, which I guess is why, outside of that, when I try to access those properties I get a "Could not initialize proxy - no Session" error.Is my only option then to disable lazy loading when using repositories? Or is it possible (or just foolish) to somehow get the session into scope in the business layer?I do like the repository model, and NHibernate is growing on me (after lots of initial frustration trying to make it work), so what's the best way you gurus have found of using them together?
Hey I am a newcomer to Visual Basic. I am using VB 2008 Express. My problem is I have a combo box filled with model #'s and I would like to have each model # correspond with a different id #, but I have no idea on how to do this, and I have found no documentation on it.
how to phrase my question, but what I am trying to do is inside a for each loop set the item of a model then set the value of that item.
dim td as new project.model.mymodel create model object For each dr as datarow in dt.rows dim itemName as string = convert.tostring(dr("Field")) td.itemName = "6" next
I keep getting an error that itemName is not part of collection td
I have a program that prints raw code to Zebra printers. We are adding some Intermec printers. So I would like to be able to pull the Model of the Printer (selected from a standard printer dialog) and use that to chose the code that would be sent to the printer.
My name is Mal, I live in Pelican Waters, Queensland, Australia.There is an application I'd like to build and I have been tossing up between a desktop and a web model. I have been studying PHP and Javascript for the past 2 years. I was studying VB a couple of years ago and have returned to it recently.