C# - Linq Group By With Anonymous Types Not Working As Expected?
Jul 14, 2011
I was toying around with some of the linq samples that come with LINQPad. In the "C# 3.0 in a Nutshell" folder, under Chater 9 - Grouping, there is a sample query called "Grouping by Multiple Keys". It contains the following query:
from n in new[] { "Tom", "Dick", "Harry", "Mary", "Jay" }.AsQueryable()
group n by new
{
[Code].....
View 1 Replies
ADVERTISEMENT
Apr 24, 2012
The documentation has an example about grouping on multiple properties[code]...
Is it possible to rewrite the original query to just return IEnumerable(Of CustomerRegionGroup), or do I have to use the anonymous type, and run a second query on the result of the first?
View 1 Replies
Jun 29, 2009
I have a problem using linq and anonymous types in an asp.net vb.net application.When I write the code above, I have 2 errors :
- "declarations of variable with Option Strinct On requires an As clause"
- "the name 'item' is not declared"
Public Sub MyFunc(ByVal xe As System.Xml.Linq.XElement)
Dim lstitems = From it In xe.Elements Select txt = it.@Text, value = it.@Value
For Each item In lstitems
Dim s As String = item.txt
Next
End Sub
Does it mean that is not possible to use Option Strict On and Option Explicit On ?Or I make a syntax error ?Or is it just a bad configuration of my application ?
View 2 Replies
Mar 19, 2010
I would like to use reflection on an anonymous type resulting from a LINQ to SQL query. I know that reflection on anonymous types works in general. The following code successfully generates a propertyinfo array with two elements:
Dim MyObject = New With {.Col1 = 1, .Col2 = "Test"}
Dim t As Type = MyObject.GetType()
Dim pilist As PropertyInfo() = t.GetProperties
[Code].....
View 7 Replies
Feb 25, 2010
I'm trying to write a linq to object query in vb.net, here is the c# version of what I'm trying to achieve (I'm running this in linqpad):
void Main()
{
var items = GetArray(
[code].....
View 1 Replies
Apr 3, 2012
I am stumped. I have a DTO object with duplicates patient address data. I need to get only the unique addresses.
[Code]...
View 3 Replies
Jul 2, 2011
Supposing the referenced List below contains 2 elements:
Dim Countries = From c In List _
Select New With { .Country = c.Country, .CountryID = c.CountryID }
The code above returns
.Country=Spain .CountryID = 1
.Country=Spain .CountryID = 1
How can I get the distinct values? The Countries query should contain only
.Country=Spain .CountryID = 1
View 5 Replies
Mar 11, 2009
Any best approach to what I'm trying to achieve (linq to sql, returning list of data to show in a grid/list etc etc)... Its complaining about anonymous type conversion, and from what I'm reading, thats not elegant way of doing it.
Public Function GetHistory(ByVal historyId As Integer) As List(Of ?????????)
Using dc As New myDataContext(Application.GetConnection)
Return (From t In dc.ActionTypes, a In t.MyTable Where a.HistoryID = historyId Select a.ActionOn, a.ActionBy, t.Description, a.ImpactedItem, a.ActionDescription).ToList
End Using
End Function
View 4 Replies
Oct 25, 2011
I am in the process of learning LINQ to Objects. I am querying an array of reference elements using LINQ. In the code below, which I have marked with asteriks and PROBLEM, I am having difficulty returning any values for and I suspect its because of the multiple Select arguments.
'Program name:Querying an Array of Invoice Objects
'Created/revised:
'Project description:To demonstrate the use of LINQ to query objects
[Code].....
View 4 Replies
Apr 24, 2012
I've got the below, where I'm grouping a collection by a propery, then wanting to access the properties of my group. Problem I have is with the anonymous typing. Because of option strict I have to give an explicit type but I can't work out what the type should be. The below doesn't compile because t.HeadAccountKey isn't a value (as t has a type of object). So either I need do some casting or my linq selector is wrong,
[Code]....
View 1 Replies
Jun 29, 2010
I'm trying to translate some C# LINQ code into VB.NET and am stuck on how to declare an anonymous type in VB.NET.[code]How do you translate C#'s new { ... } syntax into VB.NET?
View 2 Replies
Mar 17, 2010
Every LINQ example I have seen for VB.NET anonymous types claims I can do something like this:
[code]...
Now when I go to iterate through the collection(see example below), I get an error that says "Name "x" is not declared. For Each x in Infos It's like VB.NET doesn't understand that Infos is a collection of anonymous types created by LINQ and wants me to declare "x" as some type. (Wouldn't this defeat the purpose of an anonymous type?) I have added the references to System.Data.Linq and System.Data.DataSetExtensions to my project. Here is what I am importing with the class:
[code]...
View 4 Replies
May 6, 2009
Say I create two sets of tuples like so:
Dim losSPResults As List(Of spGetDataResults) = m_dcDataClasses.spGetData.ToList
Dim loTupleKeys = From t In losSPResults Select t.key1, t.key2
[CODE].....................
Now I want to perform set operations on these two lists like so:
Dim loTupleSetDifference = loTupleKeys.Except(loTupleExistingKeys)
Obviously, Linq can't perform a comparator on sets if it doesn't know the sets have uniform definitions, so it will give me this build error:
Option Strict On disallows implicit
conversions from
'System.Collections.Generic.IEnumerable(Of
< anonymous type>)' to
'System.Collections.Generic.IEnumerable(Of
< anonymous type>)'.
How do I work with the declaration of these sets to make them mesh?
Still getting the same compile error:
'*** If we have initialized the list of tools, check to make sure it's up to date Dim loTupleDatabaseTools = From tt In lottTorqueTools _Select StationIndex = tt.station_index, SlotNumber = tt.slot_number
[CODE]...............
Error is here:
Dim loTupleSetDifference = loTupleDatabaseTools.Except(loTupleToolObjects)
Error 5Option Strict On disallows
implicit conversions from
[CODE]........................
View 1 Replies
Dec 30, 2010
Are anonymous types slower than declarative types?
For example, does
Dim score as Double = CalculateScore()
run slower than
Dim score = CalculateScore()
Why use explicit typing if it's no slower?
View 5 Replies
Sep 5, 2009
Assuming Anonymous Types are tailored to be used with LINQ, I'd like to use them for simply and fast data aggregation without an explicit class definition, like in this snippet[code]....
View 2 Replies
Feb 12, 2010
Instinctively, I would say that this is impossible, as NHibernate needs to know some mapping information on how to persist a given type. Thus, I encountered some situations in which I could use such a feature. For instance, through a named query or something like so. On the other hand, using a named query would require me to make an addition to the configuration file.
Let's suppose we have an application interacting with some underlying datastore. This datastore is configured through the NHibernate configuration file. Then, I wish to have NHibernate load only a subset of an entity properties, from another subsystem to which my application shouldn't need to interact much, so it is not worthy to define classes for this system, as I only need a fraction of this alien system's information, let's say three out of thirty-two data columns. For that matter, if I chose to load only those three columns let's say for performance concerns, I would then use an anonymous type, perform the required action onto this information, then persist it back to the datastore. Now, it wouldn't be of much interest to do so if I only had one entity to get loaded from the datastore, so let's say I have about 75,000 rows to load into my process. I then shall consider this subset option very seriously!
What strategy should you choose in such situation, if you needed to persist these changes to a subset only of this entity's properties?FYI: I am asking because I must write specific rules of usage with NHibernate, such rules that even a beginner developer would even be able to use it without knowing too much about NHibernate, but only following the rules and guidance of the technical documents I have to produce.
View 1 Replies
Jun 29, 2009
How to declare Anonymous types. I want to do a different query based on a condition.
Something like this:
If true then
Dim Myquery = From data In MyXML.Root.<hist> _
Select New With { _
.SensorID = CType(data.<sensor>(0), Integer)}
else
[CODE]...
Then I want to reference MyQuery outside of the condition. But how do I declare MyQuery outside of the if statement?
View 3 Replies
Jul 26, 2010
I'm trying to create a web site that users can log into and self serve their user information ie name, address etc. I've set up a SQL server DB with a couple of table holding the data and accessing those using Linq. I'm selecting specific data from my datacontext then trying to assign it to a label, ideally I want to assign the value to a class attribute so I can use the users details on multiple pages.
I've simplified the code (removing WHERE statement etc for the purposes of this question):
Using CurrentUserDataContext
As
New UserDataDataContext()
[Code].....
View 2 Replies
Jul 9, 2009
I'm a Linq noobie, maybe someone can point me in the right direction. What's wrong here? These anonymous types seem to have the same signatures.
[Code]...
View 2 Replies
Apr 3, 2007
I'm trying to interact with the Windows SDK to control a Portable Media Device, and am running into problems correctly marshalling variables to the types expected by the SDK DLLs.I have the following code.
View 2 Replies
Nov 12, 2009
Why did the anonymous type property "Points" still have the value "0"? [code]
View 1 Replies
Oct 22, 2009
I'm out of my depth populating a windows form from an XML linq query (see code further down in post). The listbox is populated as intended, when a value is selected (row) I would like to populate the remaining form controls. The linq query I believe has created a new datatype "Anonymous Types". The query is only local to the load form subroutine but I'm not sure how to make it global.
When I define the query simply as an object the code in the selectedValueChanged event can't execute due to late databinding. how I can initially load the listbox from linq xml query and then populate the other controls when the value changes? Am I right in thinking even though the listbox is multi-columns (property) you can ONLY ever reference a row and NOT a column? I'm new to LINQ and Anonymous Types and the more I read the more confused I seem to get. On a less important note the order by is not functioning as intended (no errors) but data is always retrieved in xml file order and not by the node <text>. Also looked at using <text>.first to order the results without success.
[Code]...
View 5 Replies
May 28, 2010
I've long since built a way around this, but it still keeps bugging me... it doesnt help that my grasp of dynamic LINQ queries is still shakey.
For the example:
Parent has fields (ParentKey, ParentField)
Child has fields (ChildKey, ParentKey, ChildField)
Pet has fields (PetKey, ChildKey, PetField)
[Code].....
The above Join call doesnt work. I sort of understand why it doesnt work, but hopefully it'll show you how I tried to accomplish this task.
After all this was done I would have appended a Select to finish the job.
I tried it with the PredicateBuilder with little success. I might not know how to use it right but it felt like it wasnt gonna handle the joining.
View 1 Replies
Jan 5, 2012
I am using linq to fill a gridview with the information from an xml from code behind. I would like to order my Grid according to one of my elements in the xml ("value element").
gvResourceEditor.DataSource = (From resElem In resourceElements.Elements("data") _
Select New With { _
.Key = resElem.Attribute("name").Value, _
.Value = HttpUtility.HtmlEncode(resElem.Element("value").Value), _
.Comment = If(resElem.Element("comment") IsNot Nothing, HttpUtility.HtmlEncode(resElem.Element("comment").Value), String.Empty) _
}).OrderBy(?????)
View 1 Replies
Jul 1, 2010
I am trying to get my code working as per the instruction on [URL]So far I have the wrapper:
Public Delegate Function PredicateWrapperDelegate(Of T, A)(ByVal item As T, ByVal argument As A) As Boolean
Public Class PredicateWrapper(Of T, A)
Private _argument As A
Private _wrapperDelegate As PredicateWrapperDelegate(Of T, A)
[code]....
Then I try to call it from my code:
Dim children As List(Of String) = toplevel.FindAll(New PredicateWrapper(Of Integer, Integer)(Did, AddressOf DidMatch))
I then get an error on DidMatch ... Error Method 'Public Function DidMatch(item As DeptMenuData, did As Integer) As Boolean' does not have a signature compatible with delegate 'Delegate Function PredicateWrapperDelegate(Of Integer, Integer)(item As Integer, argument As Integer) As Boolean'.
View 1 Replies
Mar 27, 2012
I have the following Data Transfer Objects defined:
Public Class MemberWithAddressesDTO
Public Property Member_PK As Integer
Public Property Firstname As String
Public Property DefaultAddress As AddressDTO
Public Property Addresses As IQueryable(Of AddressDTO)
End Class
[Code]...
View 1 Replies
Dec 16, 2011
I'm learning LINQ and VB and just spent an hour trying to access the fields of an anonymous type defined in a linq query. The key (I learned) is to convert the query to a list before you try to iterate through it with a for loop. How to access property of anonymous type in C#?
This does not work: edit (this compiles, but intellisense does not recognize the type)[code]...
View 1 Replies
Sep 29, 2011
So I'm writing a query as follows:
Dim assSummary = From a In db.Assignments
Join ur In db.UserRegions
On a.Origin.ID Equals ur.Region.ID
[code]....
In the controller I can return the data easily as follows:
For Each c In assSummary
MsgBox(c.Description & " " & c.AssCount)
Next
If I pass the object through to the view using Viewdata("assSummary") = assSummary, how do I display the data? Every method I've tried results in messages about 'VB$AnonymousType_7(Of Integer,String) and I don't know how to retrieve the data from the anonymous type.
View 1 Replies
Jul 18, 2011
I've problems to detect if there are new rows in a DataTable Email_Total that is yet not imported into ContactDetail.
Dim srcUnique = From row In src.Email_Total
Select row.ticket_id, row.interaction, row.modified_time
Dim destUnique = From row In dest.ContactDetail
[Code].....
View 2 Replies
Jun 9, 2010
I have the same problem as stated in this question, but the accepted solution there was a "works on my machine" answer.
[Code]...
And I receive the error: BC30201: Expression expected.
Does anyone have a more detailed idea of what could cause this?
View 1 Replies