C# Add-Anlage zur mailmessage-ohne zu wissen, die Erweiterung
Einem system erzeugt Dateien mit unterschiedlichen Erweiterungen.
Diese Dateien werden an eine E-Mail-Adresse.
Wie kann ich eine Datei in einer Anlage, ohne zu wissen, die Erweiterung
Z.B. "sample.xls" muss Hinzugefügt werden, um die Anlagen, aber die Anwendung kann auch hinzufügen "sample.txt" wie kann ich damit umgehen? Ich habe jetzt
attachment = new System.Net.Mail.Attachment(@"M:/" + filename + ".xls");
Ich möchte so etwas wie dies
attachment = new System.Net.Mail.Attachment(@"M:/" + filename); //this didnt work
So, dass es sendet jede Art von Dateien. Übrigens, das mit dem Namen kommt nicht vom code, sondern von einer Datenbank ohne irgendwelche Erweiterungen, so einfach "probieren" und es hat zu senden Sie die Datei mit unbekannter Erweiterung, und es hat um es zu senden, mit der richtigen Endung.
Hilfe wird wirklich geschätzt!
Was meinst du? Gibt es keine einfache Lösung für dieses Problem?
verwenden Sie Verzeichnis.getfiles mit
filename + ".*"
um eine Liste aller passenden Dateien, und fügen Sie als AnlageAlso, wenn Sie zwei Dateien mit dem Namen "Probe", aber beide haben verschiedene Erweiterungen, die Sie möchten, Hinzugefügt werden oder nur eine?
Nein, es können verschiedene Dateien mit verschiedenen Erweiterungen, aber keine doppelten Dateinamen, die mit verschiedenen Erweiterungen. So "Sample.XLS" "Sample2.CSV" und "Sample3.TXT" man Kann im gleichen Verzeichnis, aber die gesendet werden müssen, zum anderen E-Mails. Aber die E-mail-Teil ist egal. Ich muss wissen, wie man Dateien Anhängen, ohne zu wissen, die extensions, sondern nur den Dateinamen (Beispiel,sample2,sample3);
InformationsquelleAutor user2520459 | 2013-06-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vorausgesetzt
filename
ist nur den Dateinamen und nicht den anderen Pfad-Komponenten:Wenn
filename
enthält Unterverzeichnisse dannInformationsquelleAutor Alex K.
Vielleicht kann dies Ihnen helfen(wenn Sie möchten, führen Sie es durch die Schleife):
Sollten Sie auch System.IO;
Jetzt ist es nicht hängen Sie alle Dateien an die E-mail.
Nach Anhang = new-System.Net.E-Mail.Attachment(s); Write mailMessage.Anlagen.Add(attachment); // mailMessage ist die E-mail-Nachricht aus, die Sie Anhängen möchten, die Anlage..
InformationsquelleAutor r.mirzojonov