次の設定で2つのクラスがあります。
[ActiveRecord("ReceivedMessage")]
class ARReceivedMessage : ARBase<ARReceivedMessage>
と:
[ActiveRecord("ReceivedMessageReply")]
class ARReceivedMessageReply : ARBase<ARReceivedMessageReply>
[BelongsTo(Type = typeof(ARReceivedMessage), Column = "ReceivedMessageID")]
public ARReceivedMessage Message { get; set; }
データベースをクリーンアップしようとするとき、ReceivedMessage 自体を削除する前に、まずすべての ReceivedMessageReply オブジェクトを削除したいと考えています。コードでは、これにより次のことがわかりました。
削除したいすべての receivedMessages を取得します。
ARReceivedMessage[] messagesToDelete = ARReceivedMessage.GetAll(messageCriterion);
すべての ReceivedMessageReply を削除する基準を取得し、それらを削除します。
ICriterion relatedCriterion = Restrictions.In("ReceivedMessageID", messagesToDelete);
ARReceivedMessageReply.DeleteAll(relatedCriterion);
どういうわけか、activerecord は次のことを教えてくれます: プロパティを解決できませんでした: ReceivedMessageID of: ARReceivedMessageReply
どこで間違いを犯しているのですか?
前もって感謝します