MailKit Set MessageFlag Seen after Append
I send a MailKit.Message Async with the MailKit.Net.Smtp.SmtpClient.
Then i put the Mail in the send Folder, but the Message Flag is Unseen.
I can't set the messageflag in Message build, only after Append, but i
found no way to convert the MailKit.UniqueId? to MailKit.UniqueId.
var folderSend = IC.GetFolder(MailKit.SpecialFolder.Sent);
MailKit.UniqueId? te = folderSend.Append(nochmalMessage);
folderSend.AddFlagsAsync(te, MailKit.MessageFlags.Seen, true);
te must be MailKit.UniqueId
c# imap mailkit mime-message unique-id
add a comment |
I send a MailKit.Message Async with the MailKit.Net.Smtp.SmtpClient.
Then i put the Mail in the send Folder, but the Message Flag is Unseen.
I can't set the messageflag in Message build, only after Append, but i
found no way to convert the MailKit.UniqueId? to MailKit.UniqueId.
var folderSend = IC.GetFolder(MailKit.SpecialFolder.Sent);
MailKit.UniqueId? te = folderSend.Append(nochmalMessage);
folderSend.AddFlagsAsync(te, MailKit.MessageFlags.Seen, true);
te must be MailKit.UniqueId
c# imap mailkit mime-message unique-id
add a comment |
I send a MailKit.Message Async with the MailKit.Net.Smtp.SmtpClient.
Then i put the Mail in the send Folder, but the Message Flag is Unseen.
I can't set the messageflag in Message build, only after Append, but i
found no way to convert the MailKit.UniqueId? to MailKit.UniqueId.
var folderSend = IC.GetFolder(MailKit.SpecialFolder.Sent);
MailKit.UniqueId? te = folderSend.Append(nochmalMessage);
folderSend.AddFlagsAsync(te, MailKit.MessageFlags.Seen, true);
te must be MailKit.UniqueId
c# imap mailkit mime-message unique-id
I send a MailKit.Message Async with the MailKit.Net.Smtp.SmtpClient.
Then i put the Mail in the send Folder, but the Message Flag is Unseen.
I can't set the messageflag in Message build, only after Append, but i
found no way to convert the MailKit.UniqueId? to MailKit.UniqueId.
var folderSend = IC.GetFolder(MailKit.SpecialFolder.Sent);
MailKit.UniqueId? te = folderSend.Append(nochmalMessage);
folderSend.AddFlagsAsync(te, MailKit.MessageFlags.Seen, true);
te must be MailKit.UniqueId
c# imap mailkit mime-message unique-id
c# imap mailkit mime-message unique-id
asked Nov 22 '18 at 8:20
Wolfgang SchorgeWolfgang Schorge
105
105
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
The Append()
and AppendAsync()
methods each have an overload that takes a MessageFlags
argument. This allows you to simplify your logic down to:
folder.Append (message, MessageFlags.Seen);
or
await folder.AppendAsync (message, MessageFlags.Seen);
This eliminates the need to even bother calling AddFlags() or AddFlagsAsync() with the flags you want to set on the appended message because it'll set those flags as it appends the message.
add a comment |
Your variable te has type Nullable<UniqueId>
but method AddFlagsAsync accept type UniqueId
. You can use te.Value
or before it check if te has value:
if (te.HasValue)
folderSend.AddFlagsAsync(te.Value, MailKit.MessageFlags.Seen, true);
1
Your solution is correct, but there is an even easier solution since the Append/AppendAsync methods take an optional MessageFlags argument as well, thereby eliminating the need for calling AddFlags or AddFlagsAsync :-)
– jstedfast
Nov 22 '18 at 14:39
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53426561%2fmailkit-set-messageflag-seen-after-append%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
The Append()
and AppendAsync()
methods each have an overload that takes a MessageFlags
argument. This allows you to simplify your logic down to:
folder.Append (message, MessageFlags.Seen);
or
await folder.AppendAsync (message, MessageFlags.Seen);
This eliminates the need to even bother calling AddFlags() or AddFlagsAsync() with the flags you want to set on the appended message because it'll set those flags as it appends the message.
add a comment |
The Append()
and AppendAsync()
methods each have an overload that takes a MessageFlags
argument. This allows you to simplify your logic down to:
folder.Append (message, MessageFlags.Seen);
or
await folder.AppendAsync (message, MessageFlags.Seen);
This eliminates the need to even bother calling AddFlags() or AddFlagsAsync() with the flags you want to set on the appended message because it'll set those flags as it appends the message.
add a comment |
The Append()
and AppendAsync()
methods each have an overload that takes a MessageFlags
argument. This allows you to simplify your logic down to:
folder.Append (message, MessageFlags.Seen);
or
await folder.AppendAsync (message, MessageFlags.Seen);
This eliminates the need to even bother calling AddFlags() or AddFlagsAsync() with the flags you want to set on the appended message because it'll set those flags as it appends the message.
The Append()
and AppendAsync()
methods each have an overload that takes a MessageFlags
argument. This allows you to simplify your logic down to:
folder.Append (message, MessageFlags.Seen);
or
await folder.AppendAsync (message, MessageFlags.Seen);
This eliminates the need to even bother calling AddFlags() or AddFlagsAsync() with the flags you want to set on the appended message because it'll set those flags as it appends the message.
edited Nov 22 '18 at 14:43
answered Nov 22 '18 at 14:37
jstedfastjstedfast
18.6k15177
18.6k15177
add a comment |
add a comment |
Your variable te has type Nullable<UniqueId>
but method AddFlagsAsync accept type UniqueId
. You can use te.Value
or before it check if te has value:
if (te.HasValue)
folderSend.AddFlagsAsync(te.Value, MailKit.MessageFlags.Seen, true);
1
Your solution is correct, but there is an even easier solution since the Append/AppendAsync methods take an optional MessageFlags argument as well, thereby eliminating the need for calling AddFlags or AddFlagsAsync :-)
– jstedfast
Nov 22 '18 at 14:39
add a comment |
Your variable te has type Nullable<UniqueId>
but method AddFlagsAsync accept type UniqueId
. You can use te.Value
or before it check if te has value:
if (te.HasValue)
folderSend.AddFlagsAsync(te.Value, MailKit.MessageFlags.Seen, true);
1
Your solution is correct, but there is an even easier solution since the Append/AppendAsync methods take an optional MessageFlags argument as well, thereby eliminating the need for calling AddFlags or AddFlagsAsync :-)
– jstedfast
Nov 22 '18 at 14:39
add a comment |
Your variable te has type Nullable<UniqueId>
but method AddFlagsAsync accept type UniqueId
. You can use te.Value
or before it check if te has value:
if (te.HasValue)
folderSend.AddFlagsAsync(te.Value, MailKit.MessageFlags.Seen, true);
Your variable te has type Nullable<UniqueId>
but method AddFlagsAsync accept type UniqueId
. You can use te.Value
or before it check if te has value:
if (te.HasValue)
folderSend.AddFlagsAsync(te.Value, MailKit.MessageFlags.Seen, true);
edited Nov 22 '18 at 17:49
answered Nov 22 '18 at 10:14
Grzesiek DanowskiGrzesiek Danowski
1926
1926
1
Your solution is correct, but there is an even easier solution since the Append/AppendAsync methods take an optional MessageFlags argument as well, thereby eliminating the need for calling AddFlags or AddFlagsAsync :-)
– jstedfast
Nov 22 '18 at 14:39
add a comment |
1
Your solution is correct, but there is an even easier solution since the Append/AppendAsync methods take an optional MessageFlags argument as well, thereby eliminating the need for calling AddFlags or AddFlagsAsync :-)
– jstedfast
Nov 22 '18 at 14:39
1
1
Your solution is correct, but there is an even easier solution since the Append/AppendAsync methods take an optional MessageFlags argument as well, thereby eliminating the need for calling AddFlags or AddFlagsAsync :-)
– jstedfast
Nov 22 '18 at 14:39
Your solution is correct, but there is an even easier solution since the Append/AppendAsync methods take an optional MessageFlags argument as well, thereby eliminating the need for calling AddFlags or AddFlagsAsync :-)
– jstedfast
Nov 22 '18 at 14:39
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53426561%2fmailkit-set-messageflag-seen-after-append%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown