2009-09-23 7 views
0

Je voudrais revenir un seul élément de ScPollOption à l'aide d'une procédure stockée via le code ci-dessous:SubSonic Retour ExecuteSingle pour une procédure stockée

public ScPollOption FetchPollOptionByID(int optionID) 
    { 
     StoredProcedure sp = SPs.ScPollOptionGetOptionByID(optionID); 
     return sp; 
    } 

Lorsque vous travaillez avec une requête que j'utiliser:

ExecuteSingle<ScPollOption>() 

mais SubSonic ne permet que sp.ExecuteTypedList <> et sp.ExecuteScalar <>. Comment puis-je retourner un seul objet ScPollOption?

Merci

Dan

Répondre

2

Je sais que ce n'est pas très attrayant, mais cela fonctionnerait si vous êtes en mesure d'utiliser les extensions LINQ:

sp.ExecuteTypedList<ScPollOption>().FirstOrDefault(); 

Vous pouvez également exécuter une IDataReader et gonflez manuellement l'objet ScPollOption:

ScPollOption item; 

using (IDataReader reader = sp.ExecuteReader()) 
{ 
    if (reader.Read()) 
    { 
     item = new ScPollOption(); 
     item.SomeProperty = reader.GetValue(0); 
     // Set additional properties 
    } 
} 

return item; 
+0

Plusieurs anks Marve cela a bien fonctionné! – McDotNet

Questions connexes