اذهب إلى المحتوى
  • 0

كيف أُدخل بيانات على جدول باستعمال SqlDataSource وParameters على Asp.NET؟

Simoh

السؤال

أتوفر على بنية الجدول التالي على برنامج قواعد البيانات Sql Server، وأريد ربط الجدول بتطيق على  visual Basic بلغة #C، وأتمكن من إدخال البيانات على الجدول باستعمال SqlDataSource و Parameters.

الجدول:

CREATE TABLE [dbo].[Prescriptions] 
(
    [Prescription_ID]  INT           IDENTITY (1, 1) NOT NULL,
    [Doctor_UserName]  NVARCHAR (50) NOT NULL,
    [Patient_UserName] NVARCHAR (50) NOT NULL,
    [Drug_ID]          INT           NOT NULL,
    PRIMARY KEY CLUSTERED ([Prescription_ID] ASC)
);

 

Procedure من أجل استعمال parameters:

CREATE PROCEDURE [dbo].[AddPrescription]
    @doctor nvarchar(50),
    @patient nvarchar(50),
    @drug nvarchar(MAX)
AS
    INSERT INTO dbo.Prescriptions (Doctor_UserName, Patient_UserName, Drug_ID)
        SELECT @doctor, @patient, d.Drug_ID
        FROM dbo.Drug AS d
        WHERE d.Trade_Name = @drug

كود aps.net:

<asp:SqlDataSource ID="SqlDataSource3" runat="server" 
     ConnectionString="<%$ ConnectionStrings:DefaultConnection %>" 
     SelectCommand="AddPrescription" SelectCommandType="StoredProcedure">
     <SelectParameters>
        <asp:Parameter Name="doctor" Type="String" />
        <asp:ControlParameter ControlID="PatientDropDown" Name="patient" 
             PropertyName="SelectedValue" Type="String" />
        <asp:ControlParameter ControlID="PrescriptionDropDown" Name="drug" 
             PropertyName="SelectedValue" Type="String" />
     </SelectParameters>
</asp:SqlDataSource>

كود زر إضافة البيانات:

protected void CreatePrescriptionBtn_Click(object sender, EventArgs e)
{
    SqlDataSource3.SelectParameters["doctor"].DefaultValue = System.Web.HttpContext.Current.User.Identity.Name.ToString();
    SqlDataSource3.DataBind();
}

لكن الموضوع بأكمله لا يعمل، فهل من توضيح بخصوص هذه التقنية؟

تم التعديل في بواسطة Simoh
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

يمكنك التعديل على  SqlDataSource  المستعملة في تطبيقك، عبر تغيير جملة الاستعلام المستعملة، وذلك من خلال:

IUfv4.png.c18ccf7241b5df2206ebaf7b8c9beb

وهذا نموذج بسيط على الكود المولد بشكل تلقائي، يمكنك التعديل عليه حسب الحاجة:

 <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:pubsConnectionString %>"
             SelectCommand="SELECT [ID], [CustomerName], [Population] FROM [TestTable]"
             InsertCommand="byroyalty" InsertCommandType="StoredProcedure">
            <InsertParameters>
                <asp:Parameter Name="percentage" Type="Int32" />
            </InsertParameters>
        </asp:SqlDataSource>

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...