Не уверен, что я делаю, и не могу найти никаких других ссылок о том, к чему эта ошибка относится или даже связана.MongoDB Serialization() не поддерживается
Я получаю сообщение об ошибке Serialization().Reference is not supported
, когда я пытаюсь выполнить код ниже с помощью MondoDB и C# .NET.
я впервые попробовал это в моем коде:
var maxReference = await Events.Find(p => true)
.SortByDescending(p => p.Reference)
.Project(p => p.Reference)
.FirstOrDefault();
Когда это не удалось по методу FirstOrDefault
, я медленно удаляется метод, с помощью метода, пока я не должен был сделать это:
var list = await Events.Find(p => true).ToListAsync();
var maxReference = list.Select(p => p.Reference)
.OrderByDescending(p => p)
.FirstOrDefault();
Я был готов работать с этим, если это было реальным ограничением, но я столкнулся с ним снова, когда попытался использовать метод ReplaceOneAsync
.
var form = new Event { Reference = maxReference + 1 };
var options = new UpdateOptions { IsUpsert = true };
await Events.ReplaceOneAsync(p => p.Reference == maxReference, form, options);
Мой ПОКО определяется как:
[BsonIgnoreExtraElements]
public class Event : IEvent
{
public Event() {}
public Event(int reference)
{
Reference = reference;
}
[BsonId]
public ObjectId EventID { get; set; }
[BsonRequired]
[BsonIgnoreIfDefault]
public int Reference { get; set; }
}
вы пробовали удаления BsonRequired? –
Я застрял на той же проблеме. вы нашли какое-нибудь решение? –
Наконец-то я нашел ответ. Я отправил ответ. Не уверен, что это то, что вы испытали, но моя проблема связана с Нэнси и зависимостью от инъекций. Я обнаружил, что не мог использовать интерфейсы так, как я думал или имел с другими системами DI. –