هل هناك أي طريقة لربط حدث عندما يتم أرشفة نموذج مع كفاف Umbraco؟ باستخدام Umbraco 4.7.2 و Umbraco Contour 1.12؟

أحاول إنشاء ميزة يمكنني من خلالها تتبع متى تتم أرشفة نموذج عند استخدام Umbraco Contour. نموذجيا قاعدة كود Umbraco لديها سلسلة من الأحداث التي يمكنني ربط بها. ومع ذلك لا أرى أحد هنا.

كانت الفكرة الأخرى هي أن يكون هناك مشغل أو شيء ما في قاعدة البيانات ولكن يريد أن يرى ما إذا كان هناك رمز فقط الحل لهذا النهج.

1

1 إجابة

على حد علمي ، ليس هناك أي حدث محدد يتم طرحه عند أرشفة نموذج ، ولكن يمكنك محاولة الاشتراك في الحدث FormStorage.FormUpdated ومن هناك تحقق مما إذا كان النموذج قد تمت أرشفته ، ثم تنفيذ رمزك:

using System;
using umbraco.BusinessLogic;
using Umbraco.Forms.Core;
using Umbraco.Forms.Data.Storage;

public class FormArchiveListener : ApplicationBase
{
    public FormArchiveListener()
    {
        FormStorage.FormUpdated += new EventHandler<formEventArgs>(FormStorage_FormUpdated);
    }

    void FormStorage_FormUpdated(object sender, FormEventArgs e)
    {
        FormStorage storage = (FormStorage) sender;

        if (e.Form.Archived)
        {
            ...
        }
    }
}
1
وأضاف
شكرا هذا العمل.
وأضاف المؤلف Aim Kai, مصدر
هناك ، لقد أتيحت لي الفرصة لاختبارها الآن. المرسل ليس نموذج ، بل هو في الواقع كائن FormStorage . يمكنك الوصول إلى النموذج الحالي باستخدام FormEventArgs . لقد قمت بتحديث إجابتي.
وأضاف المؤلف Douglas Ludlow, مصدر