ContentDisposition.FileName Property
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets or sets the suggested file name for an email attachment.
public:
property System::String ^ FileName { System::String ^ get(); void set(System::String ^ value); };
public string? FileName { get; set; }
public string FileName { get; set; }
member this.FileName : string with get, set
Public Property FileName As String
A String that contains the file name.
The following code example demonstrates how to set the value of this property.
static void CreateMessageAttachment1( String^ server, String^ textMessage )
{
// Create a message and set up the recipients.
MailMessage^ message = gcnew MailMessage( L"jane@contoso.com",L"ben@contoso.com",L"A text message for you.",L"Message: " );
// Attach the message string to this email message.
Attachment^ data = gcnew Attachment( textMessage,MediaTypeNames::Text::Plain );
ContentDisposition^ disposition = data->ContentDisposition;
// Suggest a file name for the attachment.
disposition->FileName = String::Format( L"message{0}", DateTime::Now );
message->Attachments->Add( data );
//Send the message.
SmtpClient^ client = gcnew SmtpClient( server );
client->Credentials = CredentialCache::DefaultNetworkCredentials;
client->Send( message );
// Display the values in the ContentDisposition for the attachment.
Console::WriteLine( L"Content disposition" );
Console::WriteLine( disposition );
Console::WriteLine( L"File {0}", disposition->FileName );
Console::WriteLine( L"Size {0}", disposition->Size );
Console::WriteLine( L"Creation {0}", disposition->CreationDate );
Console::WriteLine( L"Modification {0}", disposition->ModificationDate );
Console::WriteLine( L"Read {0}", disposition->ReadDate );
Console::WriteLine( L"Inline {0}", disposition->Inline );
Console::WriteLine( L"Parameters: {0}", disposition->Parameters->Count );
IEnumerator^ myEnum2 = disposition->Parameters->GetEnumerator();
while ( myEnum2->MoveNext() )
{
DictionaryEntry^ d = safe_cast<DictionaryEntry^>(myEnum2->Current);
Console::WriteLine( L"{0} = {1}", d->Key, d->Value );
}
data->~Attachment();
client->~SmtpClient();
}
public static void CreateMessageAttachment1(string server, string textMessage)
{
// Create a message and set up the recipients.
MailMessage message = new MailMessage(
"jane@contoso.com",
"ben@contoso.com",
"A text message for you.",
"Message: ");
// Attach the message string to this email message.
Attachment data = new Attachment(textMessage, MediaTypeNames.Text.Plain);
ContentDisposition disposition = data.ContentDisposition;
// Suggest a file name for the attachment.
disposition.FileName = "message" + DateTime.Now.ToString();
message.Attachments.Add(data);
//Send the message.
SmtpClient client = new SmtpClient(server);
client.Credentials = CredentialCache.DefaultNetworkCredentials;
try
{
client.Send(message);
}
catch (Exception ex)
{
Console.WriteLine("Exception caught in CreateMessageAttachment1(): {0}",
ex.ToString());
}
// Display the values in the ContentDisposition for the attachment.
Console.WriteLine("Content disposition");
Console.WriteLine(disposition.ToString());
Console.WriteLine("File {0}", disposition.FileName);
Console.WriteLine("Size {0}", disposition.Size);
Console.WriteLine("Creation {0}", disposition.CreationDate);
Console.WriteLine("Modification {0}", disposition.ModificationDate);
Console.WriteLine("Read {0}", disposition.ReadDate);
Console.WriteLine("Inline {0}", disposition.Inline);
Console.WriteLine("Parameters: {0}", disposition.Parameters.Count);
foreach (DictionaryEntry d in disposition.Parameters)
{
Console.WriteLine("{0} = {1}", d.Key, d.Value);
}
data.Dispose();
}
The FileName property allows the sender to suggest the name to be used to store an email attachment on the recipient's computer. This name is a suggestion only; the receiving system can ignore it. The name must not include path information; any such information is ignored by the receiving computer.
To remove file name information, you can set this property to null
or the empty string ("").
The Content-Disposition header is described in RFC 2183 available at https://www.ietf.org.
Product | Versions |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
.NET feedback
.NET is an open source project. Select a link to provide feedback: