Socal Media Productions

Blogs for Programming and IT Consulting.

Wednesday, February 01, 2012

Unable to connect to SQL Server database. Role Provider

Unable to connect to SQL Server database. at System.Web.Administration.WebAdminPage.CallWebAdminHelperMethod(Boolean isMembership, String methodName, Object[] parameters, Type[] paramTypes) at ASP.security_roles_manageallroles_aspx.BindGrid() at ASP.security_roles_manageallroles_aspx.Page_Load() at System.Web.Util.CalliHelper.ArglessFunctionCaller(IntPtr fp, Object o) at System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) at System.Web.UI.Control.OnLoad(EventArgs e) at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

 

in your web.config file for the ASP.NET site add this:

   <roleManager enabled="true" defaultProvider="SqlRoleProvider">
      <providers>
        <clear/>
        <add name="SqlRoleProvider" applicationName="eIPC" connectionStringName="Securityconn"
             type="System.Web.Security.SqlRoleProvider"/>
      </providers>
    </roleManager>
   
    <membership defaultProvider="SecuritySqlMembershipProvider">
      <providers>
        <!--Add a customized SqlMembershipProvider -->
        <add name="SecuritySqlMembershipProvider"
        type="System.Web.Security.SqlMembershipProvider"
        connectionStringName="Securityconn"
        enablePasswordRetrieval="false"
        enablePasswordReset="true"
        requiresQuestionAndAnswer="true"
        applicationName="appName"
        requiresUniqueEmail="true"
        passwordFormat="Hashed"
        maxInvalidPasswordAttempts="5"
        minRequiredPasswordLength="7"
        minRequiredNonalphanumericCharacters="1"
        passwordAttemptWindow="10"
        passwordStrengthRegularExpression=""/>
      </providers>
    </membership>

 

 

Good luck

Friday, August 26, 2011

Could not find default endpoint element that references contract

I received this error while adding a reference to a WCF service in a windows form application with multiple projects.


Error: Could not find default endpoint element that references contract '*' in the ServiceModel Client configuration section. This might be because no configuration file was found for your application, or because no endpoint element matching this contract could be found in the client element.

After hours of troubleshooting, I should have read the message more closely. This is basically saying the application cannot contact this service.  It gives 2 possible reasons why. One is that you did not include a configuration file which would be the app.config.  By default this created by the windows project templates. So it was there. The second reason is that there is not endpoint element in this XML file (app.config).

That was my problem. When you add a reference to a project using VS it will modify the app.config file and place this element in it automatically. As it turns out, when you have multiple projects in a solution and you add a reference to a project, VS will modify the app.config file of the project you are working in.  This may not be where the element needs to be placed if your solution has a different MAIN project or different startup project.  You will have to manually add this element to the app.config file that is the MAIN file for the solution.

Copy the following elements to the MAIN app.config file for your solution and you will be back on track.

Good Luck

<system.serviceModel>
    <bindings>
      <wsHttpBinding>
        <binding name="WSHttpBinding_ICFR" closeTimeout="00:01:00" openTimeout="00:01:00"
            receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false"
            transactionFlow="false" hostNameComparisonMode="StrongWildcard"
            maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
            messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true"
            allowCookies="false">
          <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
              maxBytesPerRead="4096" maxNameTableCharCount="16384" />
          <reliableSession ordered="true" inactivityTimeout="00:10:00"
              enabled="false" />
          <security mode="Message">
            <transport clientCredentialType="Windows" proxyCredentialType="None"
                realm="" />
            <message clientCredentialType="Windows" negotiateServiceCredential="true"
                algorithmSuite="Default" />
          </security>
        </binding>
      </wsHttpBinding>
    </bindings>
    <client>
      <endpoint address="http://localhost/SVC/CFR.svc"
          binding="wsHttpBinding" bindingConfiguration="WSHttpBinding_ICFR"
          contract="CFR_WCF.ICFR" name="WSHttpBinding_ICFR">
        <identity>
          <dns value="localhost" />
        </identity>
      </endpoint>
    </client>
  </system.serviceModel>

 

Wednesday, August 03, 2011

Get IP address of local computer C#

string m_sessionIp = "";

IPAddress[] localAddies = Dns.GetHostAddresses(Dns.GetHostName());

            //need to send the network address of the client computer. this could have multiple address with different versions(IPv4,IPv6)
            for (int i = 0; i < localAddies.Length; i++ )
            {
                if(localAddies[i].AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
                {
                    m_sessionIp = localAddies[i].ToString();
                }
            }

 

Good Luck

* is a field but is used as a type

I ran into this when defining a web server class inquery and response.

 public partial class WebLogger : System.Web.UI.Page
    {
            LogToService srvs = new LogToService();
            LogTo inq = new SoapPW_LogTo.LogTo();

            Service_header header = new Service_header();
                                
            header.sessiontoken = stoken;
 }

The class usage must occur with a VIOD.  So change the code to this:

 public partial class WebLogger : System.Web.UI.Page
    {
            LogToService srvs = new LogToService();
            LogTo inq = new SoapPW_LogTo.LogTo();

            aires_header header = new aires_header();
                                
        protected void SetService()
        {

              header.sessiontoken = stoken;

        }
 }

That will do it.

 

Good luck

Friday, June 03, 2011

Interop type 'Microsoft.Office Interop Excel ApplicationClass' cannot be embedded. Use the applicable interface instead.

I experienced this when upgrading the project references from 3.5 to framework 4.0

change:

Microsoft.Office.Interop.Excel.ApplicationClass();
to
Microsoft.Office.Interop.Excel.Application();

good luck

Thursday, May 19, 2011

How to Avoid Using Cursors in MS SQL

This is for a MS SQL 2008 stored procedure.

The best way to avoid cursors with great performance is to use a WHILE LOOP.

This example is to simply iterate through a table. Start by selecting your collection and inserting it into a temporary table with an indexing row. Set a counter, a while loop and containers for your business logic.

CREATE TABLE #tmpTBL1(

    RowID int IDENTITY(1, 1),

    COL1 CHAR(1)

)

 

--ADD DATA

INSERT INTO #tmpTBL1 (COL1)

(SELECT SOMECOL FROM SOMETABLE)

 

-- define your containers

DECLARE @CHECKTHIS CHAR(1)

DECLARE @ROWCOUNT INT

DECLARE @COUNTER INT

 

-- SET THIS WHEN CHECKTHIS = Y FOR THE FIRST TIME, CLEAR AFTER CHECKTHIS = N

DECLARE @YN BIT

 

 SET @COUNTER = 1;

 SET @CHECKTHIS = '';

 SET @YN = 0;

 

    SELECT @ROWCOUNT = COUNT(*) FROM # tmpTBL1

   

    SELECT @CHECKTHIS = COL1 FROM # tmpTBL1 WHERE RowID = @COUNTER

   

    WHILE @COUNTER <= @ROWCOUNT

        BEGIN              

 

                     IF @CHECKTHIS = 'Y'

                           BEGIN

                                  SET @YN = 1

                           END

 

                     ELSE -- CHECKTHIS = N

                           BEGIN

                                  SET @YN = 0

                           END

 

            SET @COUNTER = @COUNTER + 1;

 

            SELECT @CHECKTHIS = COL1 FROM # tmpTBL1 WHERE RowID = @COUNTER

 

 

 

       END -- END THE WHILE LOOP

 

Good luck

 

Monday, May 16, 2011

The Value expression for the textrun ‘*’ uses an aggregate function with an expression that returned a data type not valid for the aggregate function.

[rsAggregateOfInvalidExpressionDataType] The Value expression for the textrun ‘*’ uses an aggregate function with an expression that returned a data type not valid for the aggregate function.

I recieved this error in SSRS 2008 R2.

Check your Syntax:

I had:

 =IIF(Count(Fields!column1,"DataSet1")=0,"No Data Found", "")

 

It should have been:

=IIF(Count(Fields!column1.Value,"DataSet1")=0,"No Data Found", "")

 

I set this as an expression in a textbox to show a No Data Found Message in a SSRS report.

 

Cheers!

 

Thursday, April 14, 2011

Could not load file or assembly '*' or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.

Could not load file or assembly '*' or one of its dependencies. This assembly is built by a runtime newer than the currently loaded runtime and cannot be loaded.

I got this when running a ASP.NET web application on Win Server 2008 64 bit.

To fix this error:

Check the application pool for the site.  Make sure it can run 32 bit applications. Set the value to true. 

Stop the IIS. Delete all the temporary ASP.NET files. They are usually located here:

C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files

 Start IIS.

 

Check the Visual Studio Properties of the project.  Make sure the application is building a 32 bit assembly. Also check the target framework.  Do NOT set it to 4.0. Make sure it is between 2.0 and 3.5.

Build the VS proj.  Publish it to the Server.

 

If this does not work.  Call microsoft.

Thursday, March 10, 2011

SSRS Date Format

Make sure the type in the stored procedure is DateTime or in the sql select. You may cast a string with:

cast(COLUMN, as DateTime)

 

Once the select retruns Type DateTime, then select the textbox properties > number > Date > date format

 

Otherwise you can try this on the textbox:

=Format(CDate(Fields!A.Value), "MMMM yyyy")

 

good luck

 

Wednesday, February 23, 2011

Server Error in '/' Application. Could not load file or assembly '*' or one of its dependencies

Server Error in '/' Application. Could not load file or assembly 'pdflib_dotnet' or one of its dependencies. An attempt was made to load a program with an incorrect format.

 

I got this error when deploying a 32 bit web application to a windows server 2008 R2 64, IIS7.0.

 

The application pool is not set to run 32 bit applications. Open IIS manager, select the application pool for the site and modify the advanced settings.  Change the "Enable 32 bit Applications" property to TRUE.

open a cmd

type > iisreset

The site should restart. Retest your application and this should work.

 

cheers

 

Friday, February 18, 2011

pass parameter to ssrs report

Say you have a SSRS report located here:

http://servername/Reports/Pages/Report.aspx?ItemPath=%2fXXXX%2freportname

 

And you need to pass parameters to it from another application/webpage. The trick is to send it to a different snytax or location and SSRS will do the work.

 

Send to Here:

http://servername/ReportServer/?%2fXXXX%2freportname&rs:Command=Render&rc:Parameters=false&parameter=W&UserIdDomain=SLove&Domain=socalmp

 

This applies to SSRS 2008 R2.

 

cheers

 

steve

 

 

Wednesday, October 29, 2008

Parameter name: UltraGridDesignerDialog constructor - null grid parameter!

The references became corrupted some how and this caused the license.licx file to become corrupted.

So, what fixed it for me was dropping my references, deleting my entire bin directory, re-adding the references, and recompile.

Finally, make sure that the CopyLocal property of the Infragistics assembly reference is set to false.

 

Wednesday, October 15, 2008

Masked TextBox

Here are some important characters for custom masks:

 

Character Mask value

0 (zero)

Required digit

9

Optional digit

A

Required alphanumeric

a

Optional alphanumeric

&

Required Unicode character

C

Optional Unicode character

#

Optional digit or space, or plus or minus symbol

L

Required letter (a-z, A-Z)

?

Optional letter

. (period)

Decimal place holder

, (comma)

Thousands place holder

$

Currency symbol

: (colon)

Separate time values

/ (forward slash)

Separate date values

< (less than)

Force to lower case

> (greater than)

Force to upper case

 

 

good luck

Thursday, June 19, 2008

An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections.

An error has occurred while establishing a connection to the server.  When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections.

 

For some Reason I needed to add this to my connection string in the web.config file.

<remove name="LocalSqlServer"/>
        <add name="LocalSqlServer" connectionString="Server=servername Database=dbname; User ID=user; Password=something; Trusted_Connection=False" providerName="System.Data.SqlClient"/>
               

so the whole entry looks like this:

<connectionStrings>
        <add name="ClubSiteDB" connectionString="Server=servername; Database=dbname; User ID=user; Password=password123; Trusted_Connection=False" providerName="System.Data.SqlClient"/>
 <remove name="LocalSqlServer"/>
        <add name="LocalSqlServer" connectionString="Server=servername Database=dbname; User ID=user; Password=something; Trusted_Connection=False" providerName="System.Data.SqlClient"/>
               
    </connectionStrings>

 

Please support this blog by clicking on the advertisments to the right.

Invalid object name 'SiteSettings'.

I got this error when I was installing the ClubSite starter Kit on Godaddy's servers.

The Table is not created in the Database when the .sql script is run.

 

Run this in your query analyzer.

 

CREATE TABLE [dbo].[SiteSettings](
    [SiteID] [int] IDENTITY(1,1) NOT NULL,
    [SiteName] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
    [Theme] [int] NULL,
 CONSTRAINT [PK_SiteSettings] PRIMARY KEY CLUSTERED
(
    [SiteID] ASC
)WITH (PAD_INDEX  = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]

 

 

You'll probable need this one also

CREATE TABLE [dbo].[SiteThemes](
    [Theme] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
    [ThemeID] [int] IDENTITY(1,1) NOT NULL,
 CONSTRAINT [PK_SiteThemes] PRIMARY KEY CLUSTERED
(
    [ThemeID] ASC
)WITH (PAD_INDEX  = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]

 

 

Please support this blog by click on the advertisements to the right.

Thursday, May 22, 2008

System.Deployment. Application. Deployment Download Exception (Unknown subtype)


1). All you have to do is to add the 

.manifest = application/manifest 

and

.deploy=application/octet-stream 

in the IIS root directory's -> Properties -> HTTP Headers -> MIME Types.

RightClick the Default Web Site of your IIS , then Select Properties, then go the HTTP Header tab. Near the bottom of the tab there is a command button called MIME Types 

Click the MIME Types button. A New dialog pops. This dialog show you the MIME Types that are registered with your server. Click the New button 

on this dialog.  Another dialog pops that has two text boxes.

That asks you the Extension and MIME Type
---------------------------------------------------------------------

Like:        Extension
               MIME Type

---------------------------------------------------------------------

First  add the Extension to .manifest and add MIME Type to 

application/manifest 
Then add the Extension to .deploy   and  add MIME Type to 

application/octet-stream

Saturday, May 17, 2008

An expression of non-boolean type specified in a context where a condition is expected, near ')'

This is an syntax error in SQL when the 'if' statement is not correctly formatted.

In SQL an 'if' statement in a stored procedure can look like this:

 

IF  'condition'

BEGIN

'statement'

END

 

When the conditional statement is not formattted correctly you'll get the error for example I had:

IF  @variable = 'ALL' OR ' '

BEGIN

set @variable = NULL

END

 

I am checking the value of the incoming parameter and changing it to NULL. I do this to avoid dynamic SQL in my where clause.  But this is another topic.

SO

Change the if statement to this and avoid my mistake:

IF  @variable = 'ALL' OR @variable = ' '

BEGIN

set @variable = NULL

END

 

Please support this blog by clicking on my sponsors to the right.

 

Good Luck!

Operator '&&' cannot be applied to operands of type 'bool' and 'string'

I ran into this error when I was creating some validation logic with an 'if' statement.  It went something like this:

if (txtfield1.Text = "" || (txtfield2.Text = "" || txtfield3.Text = ""))

{

// display error message

}

You need to use double equal signs in this case.

it should be:

if (txtfield1.Text == "" || (txtfield2.Text == "" || txtfield3.Text == ""))

{

// display error message

}

 

Please support this blog by clicking on the sponsors to the right.

 

Good luck

Culture 'en' is a neutral culture. It cannot be used in formatting and parsing and therefore cannot be set as the thread's current culture.

Culture 'en' is a neutral culture. It cannot be used in formatting and parsing and therefore cannot be set as the thread's current culture.

 

I ran into this problem when I was using  a method to check for a numeric string.  I'll post this method in another blog.

Try changing the 'en' to 'en-US'

Here is the table for all possible cultures fo rthe System.Globalization class:

Culture/Language Name

Culture Identifier

Culture

"" (empty string)

0x007F

Invariant culture

af

0x0036

Afrikaans

af-ZA

0x0436

Afrikaans (South Africa)

sq

0x001C

Albanian

sq-AL

0x041C

Albanian (Albania)

ar

0x0001

Arabic

ar-DZ

0x1401

Arabic (Algeria)

ar-BH

0x3C01

Arabic (Bahrain)

ar-EG

0x0C01

Arabic (Egypt)

ar-IQ

0x0801

Arabic (Iraq)

ar-JO

0x2C01

Arabic (Jordan)

ar-KW

0x3401

Arabic (Kuwait)

ar-LB

0x3001

Arabic (Lebanon)

ar-LY

0x1001

Arabic (Libya)

ar-MA

0x1801

Arabic (Morocco)

ar-OM

0x2001

Arabic (Oman)

ar-QA

0x4001

Arabic (Qatar)

ar-SA

0x0401

Arabic (Saudi Arabia)

ar-SY

0x2801

Arabic (Syria)

ar-TN

0x1C01

Arabic (Tunisia)

ar-AE

0x3801

Arabic (U.A.E.)

ar-YE

0x2401

Arabic (Yemen)

hy

0x002B

Armenian

hy-AM

0x042B

Armenian (Armenia)

az

0x002C

Azeri

az-Cyrl-AZ

0x082C

Azeri (Azerbaijan, Cyrillic)

az-Latn-AZ

0x042C

Azeri (Azerbaijan, Latin)

eu

0x002D

Basque

eu-ES

0x042D

Basque (Basque)

be

0x0023

Belarusian

be-BY

0x0423

Belarusian (Belarus)

bg

0x0002

Bulgarian

bg-BG

0x0402

Bulgarian (Bulgaria)

ca

0x0003

Catalan

ca-ES

0x0403

Catalan (Catalan)

zh-HK

0x0C04

Chinese (Hong Kong SAR, PRC)

zh-MO

0x1404

Chinese (Macao SAR)

zh-CN

0x0804

Chinese (PRC)

zh-Hans

0x0004

Chinese (Simplified)

zh-SG

0x1004

Chinese (Singapore)

zh-TW

0x0404

Chinese (Taiwan)

zh-Hant

0x7C04

Chinese (Traditional)

hr

0x001A

Croatian

hr-HR

0x041A

Croatian (Croatia)

cs

0x0005

Czech

cs-CZ

0x0405

Czech (Czech Republic)

da

0x0006

Danish

da-DK

0x0406

Danish (Denmark)

dv

0x0065

Divehi

dv-MV

0x0465

Divehi (Maldives)

nl

0x0013

Dutch

nl-BE

0x0813

Dutch (Belgium)

nl-NL

0x0413

Dutch (Netherlands)

en

0x0009

English

en-AU

0x0C09

English (Australia)

en-BZ

0x2809

English (Belize)

en-CA

0x1009

English (Canada)

en-029

0x2409

English (Caribbean)

en-IE

0x1809

English (Ireland)

en-JM

0x2009

English (Jamaica)

en-NZ

0x1409

English (New Zealand)

en-PH

0x3409

English (Philippines)

en-ZA

0x1C09

English (South Africa

en-TT

0x2C09

English (Trinidad and Tobago)

en-GB

0x0809

English (United Kingdom)

en-US

0x0409

English (United States)

en-ZW

0x3009

English (Zimbabwe)

et

0x0025

Estonian

et-EE

0x0425

Estonian (Estonia)

fo

0x0038

Faroese

fo-FO

0x0438

Faroese (Faroe Islands)

fa

0x0029

Farsi

fa-IR

0x0429

Farsi (Iran)

fi

0x000B

Finnish

fi-FI

0x040B

Finnish (Finland)

fr

0x000C

French

fr-BE

0x080C

French (Belgium)

fr-CA

0x0C0C

French (Canada)

fr-FR

0x040C

French (France)

fr-LU

0x140C

French (Luxembourg)

fr-MC

0x180C

French (Monaco)

fr-CH

0x100C

French (Switzerland)

gl

0x0056

Galician

gl-ES

0x0456

Galician (Spain)

ka

0x0037

Georgian

ka-GE

0x0437

Georgian (Georgia)

de

0x0007

German

de-AT

0x0C07

German (Austria)

de-DE

0x0407

German (Germany)

de-LI

0x1407

German (Liechtenstein)

de-LU

0x1007

German (Luxembourg)

de-CH

0x0807

German (Switzerland)

el

0x0008

Greek

el-GR

0x0408

Greek (Greece)

gu

0x0047

Gujarati

gu-IN

0x0447

Gujarati (India)

he

0x000D

Hebrew

he-IL

0x040D

Hebrew (Israel)

hi

0x0039

Hindi

hi-IN

0x0439

Hindi (India)

hu

0x000E

Hungarian

hu-HU

0x040E

Hungarian (Hungary)

is

0x000F

Icelandic

is-IS

0x040F

Icelandic (Iceland)

id

0x0021

Indonesian

id-ID

0x0421

Indonesian (Indonesia)

it

0x0010

Italian

it-IT

0x0410

Italian (Italy)

it-CH

0x0810

Italian (Switzerland)

ja

0x0011

Japanese

ja-JP

0x0411

Japanese (Japan)

kn

0x004B

Kannada

kn-IN

0x044B

Kannada (India)

kk

0x003F

Kazakh

kk-KZ

0x043F

Kazakh (Kazakhstan)

kok

0x0057

Konkani

kok-IN

0x0457

Konkani (India)

ko

0x0012

Korean

ko-KR

0x0412

Korean (Korea)

ky

0x0040

Kyrgyz

ky-KG

0x0440

Kyrgyz (Kyrgyzstan)

lv

0x0026

Latvian

lv-LV

0x0426

Latvian (Latvia)

lt

0x0027

Lithuanian

lt-LT

0x0427

Lithuanian (Lithuania)

mk

0x002F

Macedonian

mk-MK

0x042F

Macedonian (Macedonia, FYROM)

ms

0x003E

Malay

ms-BN

0x083E

Malay (Brunei Darussalam)

ms-MY

0x043E

Malay (Malaysia)

mr

0x004E

Marathi

mr-IN

0x044E

Marathi (India)

mn

0x0050

Mongolian

mn-MN

0x0450

Mongolian (Mongolia)

no

0x0014

Norwegian

nb-NO

0x0414

Norwegian (Bokmål, Norway)

nn-NO

0x0814

Norwegian (Nynorsk, Norway)

pl

0x0015

Polish

pl-PL

0x0415

Polish (Poland)

pt

0x0016

Portuguese

pt-BR

0x0416

Portuguese (Brazil)

pt-PT

0x0816

Portuguese (Portugal)

pa

0x0046

Punjabi

pa-IN

0x0446

Punjabi (India)

ro

0x0018

Romanian

ro-RO

0x0418

Romanian (Romania)

ru

0x0019

Russian

ru-RU

0x0419

Russian (Russia)

sa

0x004F

Sanskrit

sa-IN

0x044F

Sanskrit (India)

sr-Cyrl-CS

0x0C1A

Serbian (Serbia, Cyrillic)

sr-Latn-CS

0x081A

Serbian (Serbia, Latin)

sk

0x001B

Slovak

sk-SK

0x041B

Slovak (Slovakia)

sl

0x0024

Slovenian

sl-SI

0x0424

Slovenian (Slovenia)

es

0x000A

Spanish

es-AR

0x2C0A

Spanish (Argentina)

es-BO

0x400A

Spanish (Bolivia)

es-CL

0x340A

Spanish (Chile)

es-CO

0x240A

Spanish (Colombia)

es-CR

0x140A

Spanish (Costa Rica)

es-DO

0x1C0A

Spanish (Dominican Republic)

es-EC

0x300A

Spanish (Ecuador)

es-SV

0x440A

Spanish (El Salvador)

es-GT

0x100A

Spanish (Guatemala)

es-HN

0x480A

Spanish (Honduras)

es-MX

0x080A

Spanish (Mexico)

es-NI

0x4C0A

Spanish (Nicaragua)

es-PA

0x180A

Spanish (Panama)

es-PY

0x3C0A

Spanish (Paraguay)

es-PE

0x280A

Spanish (Peru)

es-PR

0x500A

Spanish (Puerto Rico)

es-ES

0x0C0A

Spanish (Spain)

es-ES_tradnl

0x040A

Spanish (Spain, Traditional Sort)

es-UY

0x380A

Spanish (Uruguay)

es-VE

0x200A

Spanish (Venezuela)

sw

0x0041

Swahili

sw-KE

0x0441

Swahili (Kenya)

sv

0x001D

Swedish

sv-FI

0x081D

Swedish (Finland)

sv-SE

0x041D

Swedish (Sweden)

syr

0x005A

Syriac

syr-SY

0x045A

Syriac (Syria)

ta

0x0049

Tamil

ta-IN

0x0449

Tamil (India)

tt

0x0044

Tatar

tt-RU

0x0444

Tatar (Russia)

te

0x004A

Telugu

te-IN

0x044A

Telugu (India)

th

0x001E

Thai

th-TH

0x041E

Thai (Thailand)

tr

0x001F

Turkish

tr-TR

0x041F

Turkish (Turkey)

uk

0x0022

Ukrainian

uk-UA

0x0422

Ukrainian (Ukraine)

ur

0x0020

Urdu

ur-PK

0x0420

Urdu (Pakistan)

uz

0x0043

Uzbek

uz-Cyrl-UZ

0x0843

Uzbek (Uzbekistan, Cyrillic)

uz-Latn-UZ

0x0443

Uzbek (Uzbekistan, Latin)

vi

0x002A

Vietnamese

vi-VN

0x042A

Vietnamese (Vietnam)

Please support my blog by clicking on the sponsors to the right.

 

Good Luck

Tuesday, March 04, 2008

Export DataGridView to Excel

 private void ExportGridView()
        {

           Excel.Application m_objExcel = new Excel.Application();
           Excel.Workbooks m_objBooks = (Excel.Workbooks)m_objExcel.Workbooks;
           Excel._Workbook m_objBook = (Excel._Workbook)(m_objBooks.Add(Excel.XlWBATemplate.xlWBATWorksheet));
           Excel.Sheets m_objSheets = (Excel.Sheets)m_objBook.Worksheets;
           Excel._Worksheet m_objSheet = (Excel._Worksheet)(m_objSheets.get_Item(1));     

            try
            {
                int x;
                int y;
                int c;
                int cc = this.dataGridView1.ColumnCount;
                int rc = this.dataGridView1.RowCount;
                for (c = 0; c < cc; c++)
                {
                    m_objSheet.Cells[1, c + 1] = this.dataGridView1.Columns[c].HeaderText;
                }
                for (x = 0; x < (rc - 1); x++)
                {
                    for (y = 0; y < cc; y++)
                    {
                        m_objSheet.Cells[x + 2, y + 1] = this.dataGridView1.Rows[x].Cells[y].Value.ToString();
                    }
                }
                m_objExcel.Visible = true;
                m_objExcel.UserControl = true;
               
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            MessageBox.Show("Data Exported");
          

        }

arrowContact Us