vérifier ce lien d'image pour toutes les étapes https://drive.google.com/open?id=0B0-Ll2y6vo_sQ29hYndnbGZVZms
STEP1: J'ai créé un champ de type varbinary dans le tableau
STEP2: J'ai créé une procédure stockée pour accepter un paramètre de type sql_variant
ÉTAPE3: Dans ma page frontale asp.net, j'ai créé un paramètre de source de données SQL du type d'objet
<tr>
<td>
UPLOAD DOCUMENT</td>
<td>
<asp:FileUpload ID="FileUpload1" runat="server" />
<asp:Button ID="btnUpload" runat="server" Text="Upload" />
<asp:SqlDataSource ID="sqldsFileUploadConn" runat="server"
ConnectionString="<%$ ConnectionStrings: %>"
InsertCommand="ph_SaveDocument"
InsertCommandType="StoredProcedure">
<InsertParameters>
<asp:Parameter Name="DocBinaryForm" Type="Object" />
</InsertParameters>
</asp:SqlDataSource>
</td>
<td>
</td>
</tr>
ÉTAPE 4: Dans mon code derrière, je tente de télécharger les FileBytes de FileUpload Commande par cet appel de procédure stockée à l'aide d'une commande de source de données SQL
Dim filebytes As Object
filebytes = FileUpload1.FileBytes()
sqldsFileUploadConn.InsertParameters("DocBinaryForm").DefaultValue = filebytes.ToString
Dim uploadstatus As Int16 = sqldsFileUploadConn.Insert()
' ... code continues ... '
Jason, pourriez-vous mettre une instruction using autour de "SqlCommand cmd = new ..."? Sinon, je me sentirais obligé de rétrograder, et je détesterais ça. –
Si la colonne est VARBINARY (MAX), remplacez 8000 par -1, voir http://social.msdn.microsoft.com/Forums/en-US/sqldataaccess/thread/e61f0616-0866-4f3f-aeba-6a76e144e169/ –