2009-03-04 2 views
0

Я хочу реализовать следующий сценарий ...DetailsView: вставка/обновление одной записи

Таблица относится к этому вопросу заключается в следующем:

ProfileID Int (тождественное) FirstName VARCHAR (100) ЬавЬЫате varchar (100)

Шаг 1. Пользователь посещает profiles.aspx страницу. Здесь, в виде сетки, он может видеть профили других людей. (Я знаю, как это сделать.)

Шаг 2. Посещение пользователями страницы MyProfile.aspx. Так как его профиль не существует, просмотр деталей пуст, если включена кнопка вставки. Пользователь нажимает кнопку вставки, и он может добавлять только свой профиль. (Я не знаю, как это сделать).

Шаг 3. После добавления профиля пользователя он отображается на странице profiles.aspx. Он хочет обновить свой профиль. Он перемещается на страницу MyProfile.aspx с идентификатором ProfileID. Скажем, 33. DetailsView способен вытягивать свой профиль на основе профиля и кнопки обновления. (Я не знаю, как это сделать.)

Может кто-нибудь, пожалуйста, помогите мне с шагами 2 и 3. Я не знаю, как настроить sqldatasource и detailsview для этого.

Заранее спасибо.

ответ

0

Хорошо, я дам вам простое решение, которое вы можете изменить в соответствии с вашими потребностями.

Для этапа 2: Вы создаете страницу, которая называется create.aspx, например; на этой странице вы помещаете все текстовые поля, которые вам нужны, и кнопку для регистрации. На щелкнутом событии этой кнопки написать что-то, как показано ниже

//using System.Data; 
//using System.Data.Sql; you have to import these 

//Put connection string 
SqlConnection sqlcon = new SqlConnection("your connection string here which will be able to find in MSDN"); 
sql.Open(); 
SqlCommand sqlcmd = new SqlCommand("INSERT INTO Statement which easily find in MSDN too",sqlcon); 
sqlcmd.ExecuteNoneQuery(); 
sql.Close(); 

Каких этот код вы можете вставить в базу данных все, что вы хотите. В строке INSERT INTO вы объединяете свои входы, но будьте очень осторожны, что может вызвать ошибку SqlInjection, которая очень опасна. (Пожалуйста, прочтите статьи об этом).

Для шага 3: все все равно, кроме как вместо инструкции «INSERT ....» вы должны использовать инструкцию «UPDATE ...», которая может быть найдена в MSDN.

С уважением, Бедные.

0

см Следующий пример ........ исходный файл .aspx Я использую GridView и DetailsView для вставки, обновления, редактирования таблицы truckmaster. выполните следующие действия: 1. Выберите gridview.assign datakeynames как свой уникальный столбец из таблицы. Вы можете писать связанные поля для каждого поля. В противном случае это лучший способ. 2. возьмите управление источником данных. Обратитесь к своему столу. 3. привяжите этот источник данных к Gridview. Вы поймете эти шаги лучше, пройдя следующий код. 4.Вставьте подробный обзор. Введите datakeynames как свой уникальный столбец из таблицы. 5. Сделайте еще один источник данных. Добавьте его в ту же таблицу, что и команда insert.declare, selectcommand. объявить параметр выбора, updateparameter, как показано ниже. Надеюсь, это поможет вам.

<asp:GridView id     ="gridTruckMaster" 
      runat    ="server" 
      CssClass   ="GridView" 
      DataKeyNames  ="TruckType" 
      DataSourceID  ="SqlDataSource1" 
      AutoGenerateColumns ="False" 
      ShowFooter   ="True" 
      AllowPaging   ="True"> 
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White"></FooterStyle> 
<RowStyle VerticalAlign="Top" BackColor="#F7F6F3" ForeColor="#333333"></RowStyle> 
<Columns> 
<asp:BoundField DataField="TruckType"  HeaderText="TruckType"  SortExpression="TruckType"></asp:BoundField> 
<asp:BoundField DataField="TruckCapacity" HeaderText="TruckCapacity" SortExpression="TruckCapacity"></asp:BoundField> 
<asp:CommandField ShowSelectButton="True"></asp:CommandField> 
</Columns> 
<PagerStyle  BackColor="#284775" HorizontalAlign="Center" ForeColor="White"></PagerStyle> 
<SelectedRowStyle BackColor="#669999" Font-Bold="True"   ForeColor="White"></SelectedRowStyle> 
<HeaderStyle  BackColor="#5D7B9D" Font-Bold="True"   ForeColor="White"></HeaderStyle> 
</asp:GridView> 

<asp:SqlDataSource ID    ="SqlDataSource1" 
        runat   ="server" 
        ConnectionString ="<%$ ConnectionStrings:GodrejReporterConnectionString %>" 
        SelectCommand ="SELECT [TruckType], [TruckCapacity] FROM [tbl_TruckMaster]"></asp:SqlDataSource> 


<asp:DetailsView id    ="dtlviewTruckMaster" 
       runat   ="server"   
       CssClass   ="GridView" 
       Width   ="125px" 
       DataKeyNames  ="TruckType" 
       Height   ="50px" 
       AutoGenerateRows ="False" 
       HeaderText  ="Truck Details" 
     ><Fields> 
<asp:BoundField DataField="TruckType"  HeaderText="TruckType" ReadOnly="True"></asp:BoundField> 
<asp:BoundField DataField="TruckCapacity" HeaderText="TruckCapacity"></asp:BoundField> 
<asp:CommandField ShowInsertButton="True"></asp:CommandField> 
<asp:CommandField ShowEditButton="True"></asp:CommandField> 
</Fields> 
<FooterStyle  BackColor="#5D7B9D"  Font-Bold="True" ForeColor="White"></FooterStyle> 
<RowStyle  VerticalAlign="Top"  BackColor="#F7F6F3" ForeColor="#333333"></RowStyle> 
<EditRowStyle Width="250px"   Height="10px"/> 
<InsertRowStyle Width="250px"   Height="10px" /> 
<PagerStyle  HorizontalAlign="Center" BackColor="#284775" ForeColor="White"></PagerStyle> 
<HeaderStyle  BackColor="#5D7B9D"  Font-Bold="True" ForeColor="White"></HeaderStyle> 
<CommandRowStyle BackColor="#5D7B9D" /> 
</asp:DetailsView> 

<asp:SqlDataSource ID    ="SqlDataSource2" 
        runat   ="server" 
        ConnectionString ="<%$ ConnectionStrings:GodrejReporterConnectionString %>" 
        SelectCommand ="SELECT [TruckType], [TruckCapacity] FROM [tbl_TruckMaster] where [email protected]" 
        insertcommand ="insert into tbl_TruckMaster(TruckType,TruckCapacity) values(@TruckType,@TruckCapacity)" 
        updatecommand ="update tbl_TruckMaster set [email protected] where [email protected]" 
    > 
    <SelectParameters> 
     <asp:ControlParameter ControlID="gridTruckMaster" Name="pTruckType" PropertyName="SelectedValue" /> 
    </SelectParameters> 
    <UpdateParameters> 
     <asp:ControlParameter ControlID="gridTruckMaster" Name="pType"  PropertyName="SelectedValue" /> 
    </UpdateParameters> 
</asp:SqlDataSource> 

Если у вас возникли проблемы, вы можете отправить мне письмо по адресу tbchandgude @ gmail.с

Смежные вопросы