Tuesday, March 1, 2011

Debugging SQL in ASP.NET

private void BuildGridView2()
{
    GridView1.DataSource = new Select()
    .From("NewsReleases")
    .Where("RelMonth").IsEqualTo(this.ddlAward.SelectedValue)
    .And("RelYear").IsEqualTo(this.ddlYear.SelectedValue)
    .OrderAsc("RelDate")
    .ExecuteDataSet();

 }

The SQL statement above is not working for some reason. Is there a way to write the output of the staement to to the page to see what is happening?

I tired the following but got an error:

Response.Write(
    new Select()
        .From("NewsReleases")
        .Where("RelMonth").IsEqualTo(this.ddlAward.SelectedValue)
        .And("RelYear").IsEqualTo(this.ddlYear.SelectedValue).ToString()
);
From stackoverflow
  • Use SQL Profiler. It allows you to see the actual SQL query being sent to the database.

    It comes with SQL 2005/2008 client tools.

    Brett : Will that work with SQLServer Management Studio Express?
  • I'm not familiar with Subsonic, but according to this question you may be able to use the BuildSqlStatement() method of your query to see the generated SQL.

    Adam : Yes BuildSqlStatement should do what he wants.
    Brett : Thanks - this worked.

0 comments:

Post a Comment