J'ai enregistré le fichier pdf dans la base de données en utilisant le téléchargement de fichier. maintenant je veux reprendre le fichier pdf de la base de données et il doit être lié aux linkbuttons qui sont créés dynamiquement. donc pour chaque bouton de lien j'ai un fichier pdf lié à celui-ci. - comment faire cela dans asp.net en utilisant C#lien vers le fichier pdf (asp.net)
Répondre
D'abord, vous devriez lire les enregistrements de la base de données.
Disons que vous avez la structure de tableau suivant:
Id, Nom, BinaryPdfData
Vous utilisez ADO.NET, Linq2SQL ou tout ce que vous utilisez pour "SELECT" Id et Nom dans un IEnumerable (par exemple un List ou DataSet).
Ensuite, vous liez-un répéteur ASP où le ItemTemplate contient un LinkButton et le code derrière pour l'événement Click aurait vous rediriger vers une page de téléchargement par exemple « downloadpdf.aspx? Id = {0} »
Où {0} correspond à l'ID de l'enregistrement.
La page download.aspx lit l'enregistrement spécifié à partir de la base de données et place les données PDF binaires dans un tableau de tampons.
Ensuite, vous devrez définir le type de contenu etc ...
Je n'ai pas le temps de construire un bon exemple, mais vous aurez probablement besoin ceci:
Response.Clear()
//set the content type to PDF
Response.ContentType = "application/pdf"
//add content type header
Response.AddHeader("Content-Type", "application/pdf")
//set the content disposition
Response.AddHeader("Content-Disposition", "inline;filename=helloworld.pdf")
//write the buffer with pdf file to the output
Response.BinaryWrite(Buffer)
Response.End()
I écrirait un gestionnaire générique qui ira chercher le PDF à partir de la base de données à partir d'un identifiant donné:
public class PdfHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
int id;
if (int.TryParse(context.Request["id"], out id))
{
id = 0;
}
var connectionString = ConfigurationManager.ConnectionStrings["some_db"].ConnectionString;
using (var connection = new SqlConnection(connectionString))
using (var command = connection.CreateCommand())
{
connection.Open();
command.CommandText = "select image from some_table where image_id = :id";
command.Parameters.AddWithValue("id", id);
using (var reader = command.ExecuteReader())
{
if (reader.Read())
{
context.Response.ContentType = "application/pdf";
var cd = new ContentDisposition();
cd.FileName = "test.pdf";
cd.Inline = true;
context.Response.AddHeader("Content-Disposition", cd.ToString());
long bytesRead;
int size = 1024;
var buffer = new byte[size];
long dataIndex = 0;
while ((bytesRead = reader.GetBytes(0, dataIndex, buffer, 0, buffer.Length)) > 0)
{
var actual = new byte[bytesRead];
Buffer.BlockCopy(buffer, 0, actual, 0, (int)bytesRead);
context.Response.OutputStream.Write(actual, 0, actual.Length);
dataIndex += bytesRead;
}
}
else
{
context.Response.ContentType = "text/plain";
context.Response.Write("Not found");
context.Response.StatusCode = 404;
}
}
}
}
public bool IsReusable
{
get { return false; }
}
}
Et dans la page ASPX vient de mettre les ancres qui font référence à ce gestionnaire:
<a href="/PdfHandler.ashx?id=1">pdf 1</a>
<a href="/PdfHandler.ashx?id=2">pdf 2</a>
<a href="/PdfHandler.ashx?id=3">pdf 3</a>
...
- 1. Lien pour récupérer le fichier pdf de DB- in asp.net
- 2. Comment ouvrir le lien vers le fichier pdf dans un nouvel onglet en utilisant html
- 3. Lien vers le fichier CSS depuis le fichier CSS
- 4. Comment télécharger le fichier pdf dans asp.net
- 5. ASP.net: Afficher le PDF dans une page web asp.net
- 6. lien vers le disque local
- 7. Rails lien vers la version PDF de show.html.erb
- 8. Rediriger le lien du dossier vers le fichier xml
- 9. Zend_Pdf Ajouter un lien texte vers la page pdf
- 10. Comment écrire un lien vers un fichier statique dans ASP.NET MVC?
- 11. Convertisseur HTML vers PDF
- 12. asp.net code de lien vers le site de commande photo
- 13. Lien vers un script de téléchargement forcé dans un fichier pdf
- 14. MVC ouvrir le fichier pdf
- 15. Comment ajouter un lien vers un fichier PDF avec ColdFusion et iText
- 16. Lien symbolique vers le dernier fichier d'un dossier
- 17. Lien vers le fichier hors contexte racine de weblogic
- 18. ClickOnce .appref-ms plus d'un lien vers le fichier .application?
- 19. asp.net mvc faire un lien de fichier
- 20. pdf va charger si utiliser 'enregistrer lien sous' mais pas si l'utilisateur clique sur le lien
- 21. Lien vers le texte PHP
- 22. lien directement vers le GSP
- 23. PDF: lien hypertexte/position
- 24. copier le fichier PDF
- 25. lien symbolique vers le compartiment de bits
- 26. Exception sur dowloading fichier PDF dans ASP.NET
- 27. Déposez le fichier pdf à sharepoint dans asp.net
- 28. Création d'un fichier PDF via ASP.NET
- 29. Créer un fichier PDF dans Asp.net
- 30. Créer un lien vers un fichier local, mais ouvrir le dossier consulté pas le fichier réel
Vous aurez besoin d'être beaucoup plus précis sur la façon dont le fichier PDF est stocké dans votre base de données avant d'avoir une réponse sensée ici, j'en ai peur. Nous sommes des étrangers ici, donc nous ne savons pas comment fonctionne votre application. –
Quelle base de données utilisez-vous (SQL Server?)? Comment le fichier PDF est-il stocké dans la base de données? Comment sont créés les boutons de lien? –