.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
Gaurav Pal
Post New Web Links

System.Reflection: How to use the name of fields within classes to get the values?

Posted By:      Posted Date: September 16, 2010    Points: 0   Category :ASP.Net
Hey there, I have  a class defiend as follows:public class VisitorStat { public int? PageViews { get; set; } public int? Visits { get; set; } public int? Visitors { get; set; } ... } At some point in my program, I need to gather the  Visitor stats and create a report table.List<VisitorStat> visitorStats = GetVisitorStats(startDate, endDate);   My issue is this: Because there are many rows in the table, rather than hard coding the name for each row as: "PageViews", "Visits", "Visitors"... I want a way to use the name of the fields in the class to create the Row name and insert the appropriate values. I found out about System.Reflection and wrote the following:  Type type = typeof(VisitorStat); // Get type pointer FieldInfo[] fields = type.GetFields(); // Obtain all fields //Start creating a row for each field in the class foreach (var field in fields) // Loop through fields { object temp = field.GetValue(null); //The first cell in the Row contains the name of the field Cell Col2Row1 = new Cell(new Paragraph(field.Name)); PdfTable.AddCell(Col2Row1); //for item returned when calling the function to get t

View Complete Post

More Related Resource Links

I want Er Diagram for Fees System of small institution ,can u plz guide me what fields are necessary


I want Er Diagram for Fees System of small institution ,can u plz guide me what fields are necessary to store Fees information ...


Values in user control fields empty when AutoEventWireup=true ?

As a BizTalk developer I'm trying to build a ASP.NET website so some obvious things might be new to me (so please be gentle). I have a web form and I have a user control on it. This user control contains a panel with some user properties that are to be stored in a database. So far nothing fancy. The user control itself contains a panel and is working fine (all code to retrieve and store the values is working). I used the default settings of creating a user control and one of them was AutoEventWireup=true. This works fine because I also have some dropdown boxes (and other fields) that need to be filled with values from the database and that happens in the Page_load event. The panel specifies the 'DefaultButton' which calls a method when clicked to save the values after the user has changed them. On this click the code of the method is called, I confirmed that, but I found out that the values of my controls on the user control (for example the Textbox control) are empty. As a non-ASP.NET developer I couldn't figure out why. So I changed some settings like AutoEventWireup to false. Off course this resulted in my dropdown boxes no longer to be initially filled, but my surprise was big to find out my controls actually contained the values the user typed in. Logically I need both the values and th

How do you add duplicate fields to a SSRS custom report and receive differtent output values.

I have built a custom report in SSRS 2008 using fields for supplier and customer.   I have added a Parent Row Group using the Supplier field for the group expression and used the Customer Details as my child details group. This returns a list of all customers for each supplier.   (Supplier | = Customer details ( Name, Dob etc.)   How would I add an additional Supplier field to the customer details returning only values for other Suppliers used by a customer, not the value of the Supplier listed in the Parent Group?

Number of query values and destination fields are not the same

If RadioButton1.Checked = True Then rbtn = 1 Else rbtn = 2 End If ' Our insert command strSQLQuery = "INSERT INTO tblJobs " _ & "(filingDate, filingDay, reportDate, reportTime, company, jobsite, location, duration, DrugTestReq, foreman, instructions, jobSteward, nPlumbers, nFitters, nWelders, nTradesmen, nPlAppr, nFitAppr, nServTech, nHelpers) " _ & "VALUES (@DTValue, @TextDay, @DTValue2, @TextValue, @TextValue2,@TextValue3,@TextValue4,@TextValue5,@rbutton,@TextValue6.@TextValue7,@TextValue8,@NumVal,@NumVal2,@NumVal3,@NumVal4,@NumVal5,@NumVal6,@NumVal7,@NumVal8)" ' Create new command object passing it our SQL insert ' and telling it which connection to use. objCommand = New OleDbCommand(strSQLQuery, objConnection) ' Add parameters that our SQL command takes: 'radio button 'OleDbType. objCommand.Parameters.Add(New OleDbParameter("@rbutton", OleDbType.LongVarChar)) '- objCommand.Parameters.Add(New OleDbParameter("@DTValue", OleDbType.Date)) objCommand.Parameters.Add(New OleDbParameter("@TextDay", OleDbType.LongVarChar)) objCommand.Parameters.Add(New OleDbParameter("@DTValue2", OleDbType.Date)) objCommand.

Null values in formula fields

Hi,I tried using this and am concatenating the fields together.  It does not appear to be working.  Here's what I have.  Any suggestions?   IIF(IsNull({nomination.recparty1}), '0.0', {nomination.recparty1} ) &  chr(13)IIF(IsNull({nomination.recparty2}), '0.0', {nomination.recparty2} ) & chr(13)IIF(IsNull({nomination.recparty3}), '0.0', {nomination.recparty3} )andif IsNull({nomination.recparty1}) then '0.0' else {nomination.recparty1} & chr(13)if IsNull({nomination.recparty2}) then '0.0' else {nomination.recparty2} & chr(13)if IsNull({nomination.recparty3}) then '0.0' else {nomination.recparty3}Both this gets failed beacuse my fields are returned as null.Please get me to solve this.Thanks in advance.Regards,Mugil

Code in an event handler not working when used with system reflection.

Hi, I am presently writing an application that uses an MDI form with a ToolStrip on it. I have the need to build the menu items dynamically using an XML file. The format of the XML file is as follows: <ContextMenu EventHandlerHost="vFrmPDUsetup"> <!-- These styles will be applied to the menu items. Individual menu item styles can be override by defining as an attibute to the specific menu item, see below --> <Style> <MenuStripBackColour>Transparent</MenuStripBackColour> <BackColour></BackColour> <ForeColour>Chartreuse</ForeColour> <BackImage></BackImage> <!-- Must exist in Images folder --> <FontName>Tahoma</FontName> <FontSize>10</FontSize> <FontStyle>Bold</FontStyle> </Style> <!-- Attributes: Key = Resource Key name in resource file Image = image to display before text, image must exist in Images folder BackImage = background image, image must exist in Images folder BackColour = background colour as colour name ForeColour = foreground colour as colour name FontSize = size of font as value Seperator = add a menu seperator OnClick = click event pointing to the event handler method which must be defined as the MenuItem_ + <attibute value> &

How to add values of a fields (decimal numbers) to another field?

I have bunch of decimal fields on an InfoPath form and I need to add them up into a totals field when the form is saved.  How can I do that ?

what is the use of System.Diagnostics namespace classes



what is the use of  System.Diagnostics namespace classes

what is the use of System.System.Diagnostics namespace classes

what is the use of  System.System.Diagnostics namespace classes

How to INSERT new row values from two different sources, all fields from a table plus one additional

--Loading the single row returned by a table valued function into a temp table works fine like this:
DECLARE @techNumLoop VARCHAR(25)

 Names Varchar(25)
,Item_Count Integer
,Expense_AP MONEY
--,[...20 more fields]
--Loop a while
INSERT @myTemp SELECT * FROM ufn_FindSomeRow(@techNumLoop)
--And finally display a table with one row for each function call
--My Question: what if I would like to also display the value of @techNumLoop passed in to ufn_FindSomeRow?
--Then I add a field to @myTemp to hold it:
 TechNum VARCHAR(25)--added

Using Reflection to get System.ComponentModel.DisplayName or Description

I have a class and on the properties I have assigned the attributes System.ComponentModel.DisplayName and System.ComponentModel.Description.  Using reflection I can't seem to retrieve these attribute values.  How can I do this?

Label of parameter = values of 2 fields



I would like to create a parameter that has as value, the combination of 2 fields of my dataset.
Say like Name and FirstName combined as EmployeeName
There is no chance I can update/change the procedure that delivers these fields.

I tried looking into the code, but didn't have a lot of success.
Anyone some ideas?


Get method parameter's values using reflection


By writing the following code I can get the method parameters metadata.


        void test(int x, string s)
            StackTrace st = new StackTrace(true);

            foreach (StackFrame sf in st.GetFrames())
                MethodBase mb = sf.GetMethod();
                foreach (ParameterInfo pi in mb.GetParameters())


I need the parameters value (the value that was passed to the method).

Can I get it in C#?


Thanks Gil

Altering object values across different classes


I have two different classes, and would like to (for example) alter the text of a label control contained in one class using the other. At present I experience the following error (e.g.):

"ProjectName.PageName.Protected WithEvents ControlName As System.Web.UI.HtmlControls.HtmlGenericControl' is not accessible in this context because it is 'Protected'."

All the subroutines in my PageName class begin "Protected Sub...", however even if I change these to "Public Sub..." this does not fix the problem. How do I achieve this? Also, are there security implications to not protecting subroutines?

How to set values on multiple fields, from one drop down?


Hi all

In my form I have a budget. With fields from January - December, and Q1 - Q4 etc.

We have one drop down field where we can choose currency (USD, EURO, GBP etc.). When choosing one of them from drop down, I need to tell the users that this currency is used, by putting the the name of the currency on all budget - fields, i.e. 100 USD, 100000 USD etc..

How can this best be achieved ?
Do I have to write custom code on change event or something like that?


using System.Reflection to saving to database


Hello guy!


I am having challenges saving multiple row to my database using reflection. Each time I cmd.ExecuteNonQuery(), I get the message 'The variable name '@referenceID' has already been declared. Variable names must be unique within a query batch or stored procedure.'

What should i do to resolve this?

Getting System.Reflection.TargetInvocationException while trying to change the AD password of an use



I'm having this problem and I'm not able to solve this for a while now. The scenario is like any user of my web apps can change their application password and the corresponding Server AD ID password from the application itself. I'm using .NET 3.5 framework and was came to know that by using the namespace called

System.DirectoryServices.AccountManagement  we can do any AD ID manupulation by writing C# code. I've written the below code to change the AD password of the user.

#region SetUserDomainPassword for setting the new password as domain password

private bool SetUserDomainPassword(string strUserId, string strNewPassword)


bool blnflag = false;



UserPrincipal oUserPrincipal = GetUser(strUserId);


blnflag = true;

return blnflag;



catch (Exception ex)


ExceptionPolicy.HandleException(ex, "EPolicy");

return blnflag;




#region GetUser for getting the user info

public UserPrincipal GetUser(string sUserName)


PrincipalContext oPrincipalContext = GetPrincipalContext();

UserPrincipal oUserPrincipal =

UserPrincipal.FindByIdentity(oPrincipalContext, sUserName);

ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend