これに対する答えが明らかなように思えば謝りますが、私自身はそれを理解できません。 私はWebアプリケーションを構築しており、データベースからデータを取得してデータリストに表示する必要がある段階に来ました。私はデータリストで、次の出力を目指していますASP.NETデータリスト内にリストを配置するには
:
質問1名
回答1
回答2
...
回答8
質問2名
回答1
回答2
...
回答8
質問3名
回答1
....
あなたがアイデアを得ます。 私は基本的なデータリストを書いていますが、ある程度はうまくいく質問(以下のコード)で書かれていますが、すべてのデータが取得されるまで、答えを出してからプロセスを繰り返す方法はよくわかりません。 ここにコードがあります。 Confirm.aspx
<asp:DataList runat="server" id="dgQuestionnaire">
<ItemTemplate>
<asp:Label ID="Name" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "QuestionText") %>' />
</ItemTemplate>
</asp:DataList>
Confirm.aspx.cs
public partial class Confirm_Questionnaire : System.Web.UI.Page
{
OsqarSQL GetData;
DataTable DT;
protected void Page_Load(object sender, EventArgs e)
{
GetData = new OsqarSQL();
int questionnaireId = (int)Session["QuestionnaireID"];
string questionnaireName = (string)Session["QuestionnaireName"];
ReturnQnrName.Text = questionnaireName + " (ID: " + questionnaireId.ToString() + ")";
int questionId = GetData.GetQuestionID(questionnaireId);
DT = GetData.GetQuestionName(questionnaireId);
dgQuestionnaire.DataSource = DT;
dgQuestionnaire.DataBind();
} // End Page_Load
} // Emd Class Confirm_Questionnaire
Questionnaire.cs(にApp_Code)
public class OsqarSQL
{
private string _productConnectionString;
private SqlConnection _productConn;
public OsqarSQL()
{
_productConn = new SqlConnection();
_productConnectionString += "data source=mssql.database.co.uk; Initial Catalog=devworks_oscar;User ID=me;Password=you";
_productConn.ConnectionString = _productConnectionString;
}
public DataTable GetQuestionName(int QuestionnaireID)
{
string returnValue = string.Empty;
SqlCommand myCommand = new SqlCommand("GetQuestion", _productConn);
myCommand.CommandType = CommandType.StoredProcedure;
myCommand.Parameters.Add(new SqlParameter("@QUEST_ID", SqlDbType.Int));
myCommand.Parameters[0].Value = QuestionnaireID;
return createDataTable(getData(myCommand));
}
public DataTable GetAnswerTitle(int QuestionnaireID)
{
string returnValue = string.Empty;
SqlCommand myCommand = new SqlCommand("GetAnswer", _productConn);
myCommand.CommandType = CommandType.StoredProcedure;
myCommand.Parameters.Add(new SqlParameter("@QUEST_ID", SqlDbType.Int));
myCommand.Parameters[0].Value = QuestionnaireID;
return createDataTable(getData(myCommand));
}
私は何かが欠けています知っているが、私表示するために何を含めるべきかわからないそれぞれの質問の答え。
おかげ Idny、
良い質問ときちんと構造化されたコード。おそらくデータアクセスレイヤーのコードは、その機能が暗示されているため、問題の直接的な部分ではないため、必要以上に長くなる可能性があります。 – pseudocoder