Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Create a non-anonymous "select new" in LINQ to SQL

Posted on 2009-06-30
3
Medium Priority
?
579 Views
Last Modified: 2013-11-11
This is really a two part question,

1) How do you do an "AND" clause in a join (see code snippet)

2) How do I take my "select new" results and turn it so I can return it as either a non-anonymous type or return it as a list.
0
Comment
Question by:bryan_z
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 64

Accepted Solution

by:
Fernando Soto earned 500 total points
ID: 24748641
Hi bryan_z;

Not sure if this is what you are asking for question 1 if not post your example so that I can have a better idea, see code snippet below.

In answer to 2 you create a class with public properties with the names of the variables in the select statement, see code snippet 2 below.

Fernando
DataClasses1DataContext db = new DataClasses1DataContext();
 
// Query was copied from Microsoft Documentation with small modification
List<MyResults> query = (from o in db.Orders
                         from p in db.Products
                         join d in db.Order_Details
                         on new { o.OrderID, p.ProductID } equals new
                         {
                             d.OrderID,
                             d.ProductID
                         } into details
                         from d in details
                         select new MyResults
                         {
                             OrderID = o.OrderID,
                             ProductID = p.ProductID,
                             UnitPrice = d.UnitPrice
                         }).ToList();
 
foreach (MyResults mr in query)
{
    Console.WriteLine("OID = {0}  PID = {1}  UC = {2}",
        mr.OrderID, mr.ProductID, mr.UnitPrice);
}
 
 
public class MyResults
{
    public int OrderID { get; set;  }
    public int ProductID { get; set; }
    public decimal UnitPrice { get; set; }
}

Open in new window

0
 

Author Closing Comment

by:bryan_z
ID: 31598461
Thanks. I thought i had posted the code example. Your example was great and just what I was looking for
0
 
LVL 64

Expert Comment

by:Fernando Soto
ID: 24749203
Not a problem, glad I was able to help.  ;=)
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
In this brief tutorial Pawel from AdRem Software explains how you can quickly find out which services are running on your network, or what are the IP addresses of servers responsible for each service. Software used is freeware NetCrunch Tools (https…
This tutorial will teach you the special effect of super speed similar to the fictional character Wally West aka "The Flash" After Shake : http://www.videocopilot.net/presets/after_shake/ All lightning effects with instructions : http://www.mediaf…

722 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question