Avatar billede websam Nybegynder
20. august 2006 - 21:10 Der er 12 kommentarer og
1 løsning

Datalag - Businesslag - fejl ?

Hejsa,

Jeg har i mit datalag lavet en metde der retunere bool true/false. I mit business har jeg så en medtode der skal retunere en string med en fejl besked afhænnigt af om jeg får tru el. false fra mit datalag.

Men når jeg forsøger at kalde det fra en af mine sider får jeg denne fejl :

    Cannot implicitly convert type 'bool' to 'string'

Skal det sige at jeg ikke igennem mine lag kan have bool/string i to uafhænnige metoder ?

/Websam
Avatar billede arne_v Ekspert
20. august 2006 - 21:15 #1
Du skal vel lave noget a la:

Dim stat As Boolean = dalobj.Something
If stat Then
    Return "Alt okey dokey"
Else
    Return "He he - prøv igen"
End If
Avatar billede websam Nybegynder
20. august 2006 - 21:55 #2
Det jeg har lavet er følger :

DAL
private DatabaseHelper _Db = new DatabaseHelper();
public bool RoleExists(string roleName)
{
    string Sql = "Select * From tbl_Roles Where RoleName = '" + roleName + "'";
    DbDataReader Dr = _Db.ExecuteNonQuery(Sql);
    bool Result = false;
    if (Dr.HasRows)
    {
      Result = true;
    }
    Dr.Close();
    return Result;
}

BLL
public string CreateRole(string roleName)
{
    bool Result = objDAL.RoleExists(roleName);
    if (Result)
    {
        return (string)HttpContext.GetGlobalResourceObject("Roles", "ErrorRoleAdd");
    }
    else
    {
        return "";
    }
}

PL
string Result = "";
Result = objBLL.CreateRole(txt_AddRole.Text);
if (Result != "")
{
    ErrorRoleAdd.Text = Result;
}

Når jeg compiler er det så objBLL.CreateRole(txt_AddRole.Text); der kommer med fejlen og jeg kan ikke lige se hvor det skulle kikse ? Det sagtens være mig der misser noget nu hvor jeg er ved at lære det her C# ;o)

/Websam
Avatar billede arne_v Ekspert
20. august 2006 - 22:02 #3
lyder mest som om der mangler en total rebuild af alt

det der er string->string ikke bool->string
Avatar billede websam Nybegynder
20. august 2006 - 22:12 #4
Hver gang jeg ændre noget i mit library laver jeg rebuild og det giver samme fejl hvergang jeg forsøger at lave en rebuild ?!?

/Websam
Avatar billede erikjacobsen Ekspert
20. august 2006 - 22:15 #5
Jeg kan kun se een sjov ting. Du kalder _Db.ExecuteNonQuery(Sql)  men det er en query/select, og du får faktisk en datareader tilbage, øjensynligt. Måske din DatabaseHelper gør det på den måde, men er det ikke lidt underligt, og lidt programmeringsfjendsk at bruge et velkendt metode-navn på en uortodoks måde?
Avatar billede erikjacobsen Ekspert
20. august 2006 - 22:18 #6
...eller overser du at du får en fejl, og reelt ikke får rebuildet?
Avatar billede websam Nybegynder
20. august 2006 - 22:20 #7
Hvad mener du med det erik ?

/Websam
Avatar billede erikjacobsen Ekspert
20. august 2006 - 22:22 #8
Hvad er det lige du ikke kan se?
Avatar billede websam Nybegynder
20. august 2006 - 22:27 #9
Nu tabte jeg tråden erik. Fejlen jeg får kommer når jeg laver en rebuild af enten hele min solution eller mit library.

/Websam
Avatar billede erikjacobsen Ekspert
20. august 2006 - 22:29 #10
Jamen, det kan osse være jeg tisser op af det forkert træ. Jeg mener stadig man ikke kan tillade sig at bruge ExecuteNonQuery på en "SELECT.." og få en DataReader tilbage.

Men skal vi udelukke at det ku' være årsagen til dit problem, så ta' lige og build DAL.cs - og kun den, og se om den siger ok.
Avatar billede websam Nybegynder
20. august 2006 - 23:09 #11
Ja der kan man jo bare se det skal jo selvfølgelig være :

    DbDataReader Dr = _Db.ExecuteReader(Sql);

Som også er det den hedder i min database hjælpe klasse DOHHHHH.....

Tak for hjælpen, så er jeg på banen igen, smid et svar ;o)

/Websam
Avatar billede erikjacobsen Ekspert
20. august 2006 - 23:14 #12
Lyder godt. Jeg ved ikke om du er ramt ind i at Visual Studio har en checkbox: "Jeg kan ikke lide at se, når jeg har lavet en fejl. Vil du ikke godt fortsætte som om intet var hændt".

Jeg samler ikke på point. Det er jo underholdning i sig selv ;)
Avatar billede websam Nybegynder
20. august 2006 - 23:29 #13
Jeg kan jo blot åbne øjnene her sidst på dagen ;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester