---
title: "Problem med en class i webservice"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/155666-problem-med-en-class-i-webservice"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "saw"
published: "2007-01-07T18:46:30.000Z"
updated: "2007-01-07T21:29:34.000Z"
replies: 3
views: 333
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/155666-problem-med-en-class-i-webservice"
---

# Problem med en class i webservice

## #1 — saw, 2007-01-07T18:46Z

Jag försöker att få ihop en liten smidig class men det skiter sig.
Min class

```
 public static decimal OleDbCount(string sql, OleDbConnection DBConn)
    {
        decimal sText = 0;
        try
        {
            OleDbCommand OleDbCmd = new OleDbCommand();
            OleDbCmd.CommandText = sql;
            OleDbCmd.Connection = DBConn;

            DBConn.Open();
            sText = (int)OleDbCmd.ExecuteScalar();
            return sText;
        }
        catch { }
        finally { DBConn.Close(); }
        return sText; 
    }
}
//detta fungerar jag skickar alltså in en sql här
 public decimal  CountSQL(string sql)
    {//string strSQL = "select count(*) from Produkter ";
        decimal sText = 0;
        try
        {
            sText = (decimal)WebbUtill.OleDbCount(sql, DBConn);

            return sText;
        }
        catch{  }
        
        return sText;
    }
//detta fungerar inte jag kommer till en sida som inte visar någonting
public decimal HowMuchWillItCost(string productName, int howMany)
    {
        try
        {
            if (howMany > 0)
            {                string sql = "Select Enhetspris FROM Produkter WHERE 
Produktnamn = '" + productName + "'";
                decimal price = (decimal)WebbUtill.OleDbCount(sql, DBConn);

                return price * howMany;
            
            }
            else
            {
                throw new Exception("\n" + " howMany cant bee negative.");

            }
        }
        catch (Exception e)
        {
            throw new Exception("Error calculating cost: " + e.Message);
        }
        decimal varde = 0;
        return varde;
    }
```

Någon som kan se felet???

Permalänk: https://www.webforum.nu/p/155666

## #2 — emission, 2007-01-07T19:38Z

Du skriver att det är en webservice, men jag kan inte att något är definierat som WebMethod..

Var kommer databaskopplingen ifrån?

Att du skapar en sql-sats med konkatenering, och inte med parametrar, föranleder en vänlig men mycket bestämd rundspark.

Permalänk: https://www.webforum.nu/p/1918652

## #3 — saw, 2007-01-07T19:59Z

emission 
Jag tog inte med \[WebMethod(CacheDuration = 0,
    Description="Hur mycket kostar varorna?")\]
eller databaskopplingen, kanske fel men det fungerar.
Att jag har en sql-sats är bara tillfäligt det skall bli agrument.
Det jag undrar över är varför den ena classen fungerar men inte den andra.

Permalänk: https://www.webforum.nu/p/1918656

## #4 — saw, 2007-01-07T21:29Z

Jag har hittat felet

```
sText = (decimal)OleDbCmd.ExecuteScalar();
```

Jag hadde råkat skriva int där tidigare.
Jag har också ändrat ifrån sql till parameter.
Tack för hjälp.

Permalänk: https://www.webforum.nu/p/1918677

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/155666-problem-med-en-class-i-webservice
