C# - How To Use Lambda Expression To Select Different Fields From Field Names
Nov 18, 2010
I need to get two fields from a database table (retrieved using linq-to-sql), one field is a datetime (and is a fixed field) and the other is always a decimal, but the field can be different.
The table holds currency data which is processed twice a day and in different currencies so could have fields such as AM_USD, PM_USD, AM_EUR etc. And I need to get data such as a list of the date against PM_USD or the date against AM_EUR.
I would like to be able to call the data using a lambda expression for example (this is a stripped out example):
data = TableData.Select(x=>new {x.DateTimeAdded, x.[**field name as string**]});
I have been trying to write a function to do this, and am failing dismally.
@{Html.RenderAction("Detail", "Help", new { pageName = "press" });} But instead i'd like to use a lambda expression to get away from the string bits. I tried using the following (which is the nearest approximation i could figure based on my limited knowledge of the engine):
@{Html.RenderAction<HelpController>(x => x.Detail("press"));} But i get the following error:
The non-generic method 'System.Web.Mvc.Html.ChildActionExtensions.RenderAction(System.Web.Mvc.HtmlHelper, string, string, System.Web.Routing.RouteValueDictionary)' cannot be used with type arguments
However, i'm reading in the Apress MVC 2.0 book that it is in fact declared as a method that takes type arguments. Am i missing an assembly reference, or has it not been included in the MVC 3.0 Preview 1 build?
I have two lists. lst contains ViewState Data i.e All the records of the gridview & second lstRank contains the list of integer(i.e ID) for only those records which are marked as checked (i.e Gridview contains a columns for checkbox). Now i want to update the lst bool status depending upon integer ID of lstRank. How it can be achieved by lambda expression
I'm new to LINQ and EF and I seem to be having trouble working this out.
I have a many-to-many relationship between my Location and Region tables. When adding or editing a Location, my interface allows the user to check any number of related Regions. If they click OK, I need to add any new relationships that were checked, and delete any existing relationships that have been unchecked. My basic code is shown below.
However, this code doesn't work. Lower down, the line location.Regions.Contains(region) returns false even when the location already is related to the region. The issue appears to be because the region is from my populated listbox that was initialized earlier and is no longer part of the current EF context. But if I try and add it, I get an error that there is already a Region with that ID.
It seems like what I want to do is change this line to something like location.Regions.Contains((r) => r.RgnID == region.RgnID) so I'm only testing for a particular ID. But this gives me the error "Cannot convert lambda expression to type 'TrailCalendar.Region' because it is not a delegate type."
I don't understand this error but, either way, I'm not sure how I can test if the relationship already exists without reloading a bunch of data, which I'd like to avoid.
how the Lambda expression work specially in case of parameters (in the above case a & b) ? What is the basic concept of parameters in Lambda expression ? Can we use the names of the variables defined outside of the query instead of a & b ? which elements a & b represent in the above case represent ? Can we pass parameters from outside in the query ? If we can pass parameters from outside query then how it will be done? If you give me any other example instead of the above query to understand the concept of parameter in Lambda expression.
What will be the equivalent GroupJoin lambda expression in LINQ when I do this.
Dim fruit_salad = (From fruits In _DataContext_Fruits _ Group Join fruitRipe In _DataContext_FruitRipe On fruitRipe.fID Equals fruits.fID Into Group From fruitty_lecious In Group.DefaultIfEmpty() _
I have been working with this database for some time. Here is the situation...
I inherited a MS SQL database that has hundreds of tables with similar data. For instance:
FordTampa_customer is a table,
ChevyAtlanta_customer is a table, etc....
All of the columns are the same...just different tables with their own ID field. All I have done...Inside of another database id is created a table called 'Customer' and added an 'Dealer ID' column along with the rest of the other columns in the other tables...
So the combination of the 'Dealer ID' and the 'ID' field are unique.....I know...its not the best way to do things...but I cannot change the old data structure because I cannot have access to it. I am give back-ups on a weekly basis, so this is all I have to work with.
All right, on to the real point of my post...
Currently, I have an application that I use to select all of the data from the 'Ford_customers','Chevy_customers',etc... and inserts them into my new main 'Customer' table. I do this by selecting the table names, bind it to an arraylist, loop through the list and execute an insert statement.
I do this in VB.NET, but I would prefer to do it in a Stored procedure of some kind....I just am not sure how to accomplish it. I use this syntax to get my list of tables:
[Code]....
I am not sure how to take those names from the table and do another select based on that list of names.
I need a way to create a regular expression from a string or an array of domain names. for example string array = [URL]. Once I click save I would want to create a regular expression that would match all 3 with or without '.com' extension. Then Another task would be to pull this data out of regular expression and put it back into an array.
I used the script where the image array has static images.I want to convert it dynamically by finding my images names from index.aspx.cs files which are stored in hidden fields.
I want to split this hidden filed and assign it to imagearray.how can i do this
var mygallery2=new fadeSlideShow({ wrapperid: "fadeshow2", //ID of blank DIV on page to house Slideshow dimensions: [568, 313], //width/height of gallery in pixels. Should reflect dimensions of largest image imagearray: [ ["images/1.jpg", "", "", ""], ["images/2.jpg", "", "", ""], ["images/3.jpg"], ["images/4.jpg", "", "", ""] //<--no trailing comma after very last image element! ], displaymode: {type:'auto', pause:2500, cycles:0, wraparound:false}, persist: false, //remember last viewed slide and recall within same session? fadeduration: 500, //transition duration (milliseconds) descreveal: "always", togglerid: "fadeshow2toggler" })
i am using .rdlc report .I have three fields like length,width ,height.I want to display Length X Width X Height.This is not multiplication .i want to show in a single column.
I have a gridview that is dynamically created based off a csv file I'm importing.
Since I don't know what the column names are ahead of time, I can't pre format the gridview and use the "findcontrol" method to get the text value of the labels that are populated b/c I don't know the column names.
I know I can get the row index like this by iterating through the gridview...
[Code]....
but I'm not sure how to get the text value of the first column label? Not sure of the syntax?
I want to specify the field names at runtime as mentioned above - sql = "Insert into [Sheet1$] ('" + field1 + "','" + field2 + "') values('1','abc')"; When I try this I am getting error.
Given a set of uploaded files in Request.Files, how do figure out which form field yielded which file?
I have a generic form emailer that various forms post to. This file generates an email of the name/value pairs contained in the form post. I'm trying to add support for uploaded files such that the table of name/value pairs will show the name of the file upload element and the name that the file was saved as.
However, I can't figure out how to link that information together. HttpPostedFile doesn't contain any information about the HTTP request (like which field name was used), and Request.Form doesn't contain any entries for uploaded files.
So while I can easily upload the files, I don't have an easy way to generate an email saying "this uploaded file was for this field, and this uploaded file was for that field".
I am writing an app that has a bit of process flow to it. On the save of a record, I need to check some fields to make sure they are not null. If they are not null, I will update a 'SectionComplete' field to true.
The thing is, I would like to store my fields in the web.config. So, I would like to have a string in the appsettings section that has a list of field names that are required. Then in my method, I would call these fields out and check each one for the specific record id, and then update the database.
I would like to do this in the web.config so we could add/remove columns without having to redeploy.
For example: my required fields are name, id, and phone. For section one to be labeled complete, all of these fields would need to be not null.
I am not sure about writing the method in the web service. I'm trying to select the client names from sql server, then storing them into an arraylist. Finally, returning the array of names. This is my code:
i want regular expression for my password field 1. which will not allow to enter two same consecutive charcters 2. it should contain min 8 charcters.3. should contain atleast 2 numeric charcters and if possible code for not allowing user to enter comman passwords