Gå til innhold

Anbefalte innlegg

Skal lage et simpelt "bankprogram" ved hjelp av en klasse og objekter. Har fått utdelt klassen og den ser slik ut:

 

using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

/// <summary>
/// Summary description for konto
/// </summary>
public class konto
{

   private decimal _saldo = 0;

   public konto(decimal saldo)
   {

       //

       // TODO: Add constructor logic here

       //

       _saldo = saldo;

   }

   public void nySaldo(decimal belop)
   {

       if (belop < 0)
       {

           _saldo = _saldo + belop;

       }

       else
       {

           _saldo = _saldo + belop;

       }

   }

   public decimal Saldoen
   {

       get { return _saldo; }

       set { _saldo = value; }

   }

}

 

Jeg skal utifra dette lage et program som gjør det mulig å legge til og trekke fra penger fra en konto. Simpelt nok egentli, men jeg sitter bom fast. Her er kodinga jeg har fått til så langt

 

using System;

using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

public partial class _Default : System.Web.UI.Page 
{
   decimal saldo = 10000;
   konto kontoen = new konto(saldo);

   protected void Page_Load(object sender, EventArgs e)
   {

      lblVis.Text=Convert.ToString(saldo); 
   }
   protected void Page_Unload(object sender, EventArgs e)
   {
       Session["kontoen"] = kontoen;
   }
   protected void btnUtfor_Click(object sender, EventArgs e)
   { 
       if (Session["kontoen"] != null)
       {
           kontoen = (konto)Session["kontoen"];
       }
       decimal belop = Convert.ToDecimal(txtInn.Text);
       kontoen.nySaldo(belop);



   }
}

 

Jeg får denne feilmeldinga: "Error 1 A field initializer cannot reference the non-static field, method, or property '_Default.saldo"

 

Har prøvd å sette static forran decimal saldo, men det hjelper svært lite.

Endret av -=Svin=-
Lenke til kommentar
Videoannonse
Annonse

Grunnen er at du ikke kan bruke et ikke-statisk felt til å initialisere kontoen.

Du må sette dette i constructoren istedet

 

public partial class _Default : System.Web.UI.Page
{
 decimal saldo;
 konto kontoen;

 public _Default(decimal start_saldo) // Constructor
 {
saldo = start_saldo;
kontoen = new konto(saldo);
 }
 public _Default() // Standard constructor
: this(10000)  // Kall den andre constructoren med 10000 som saldo
 {
 }
 ... Etc.
}

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...