मैं Azure WebJobs के लिए नया हूँ, मैं एक नमूना जहां एक उपयोगकर्ता ब्लॉब भंडारण के लिए एक छवि अपलोड करती है और कतार में एक रिकार्ड सम्मिलित करता है को चलाने की है, तो काम पुन: प्राप्त करता है कि कतार से एक संकेत का आकार बदलने की तरह कुछ करने के लिए के रूप में अपलोड की गई छवि। मूल रूप से कोड में नौकरी QueueTrigger
विशेषता को सार्वजनिक स्थिर विधि पर करने के लिए उपयोग करती है।Azure WebJobs - कोई फ़ंक्शन नहीं मिला - मैं ट्रिगर-कम नौकरी कैसे बना सकता हूं?
अब मुझे लगता है कि सिर्फ एक डेटाबेस तालिका में हर घंटे एक रिकार्ड डालने की तरह कुछ करता है एक नौकरी की जरूरत है, यह ट्रिगर के किसी भी प्रकार नहीं है, यह सिर्फ खुद चलाता है। मैं यह कैसे करु?
मैं एक स्थिर विधि करने की कोशिश की और उस में मैं db से, काम शुरू किया डालने करना है लेकिन मुझे यह संदेश मिल गया:
नहीं कार्यों पाया। नौकरी कक्षाओं को सार्वजनिक बनाने और विधियों को सार्वजनिक बनाने का प्रयास करें स्थिर।
मैं क्या याद आ रही है?
संपादित के बाद विक्टर का जवाब मैंने कोशिश के बाद,
static void Main()
{
JobHost host = new JobHost();
host.Call(typeof(Program).GetMethod("ManualTrigger"));
}
[NoAutomaticTrigger]
public static void ManualTrigger()
{
// insert records to db
}
लेकिन इस बार मैं InvalidOperationException
मिला,
'शून्य ManualTrigger()' Azure WebJobs से लागू नहीं किया जा सकता एसडीके। क्या यह Azure WebJobs एसडीके विशेषताओं को याद कर रहा है?
धन्यवाद विक्टर आपके उत्तर के लिए, मैं NoAutomaticTrigger की कोशिश की और एक InvalidOperationException मिला है, मैं कोड मैं साथ मेरे सवाल को नवीनीकृत किया है, तो आप मैं गलत क्या कर रही हूं कृपया देखने के लिए मदद कर सकता है। आपका बहुत बहुत धन्यवाद! –
क्या आप एसडीके का उपयोग कर रहे हैं? क्या कक्षा सार्वजनिक है? –
आह आप सही हैं, मैंने अभी "कक्षा कार्यक्रम" पर "सार्वजनिक" घोषित किया है, यह चलता है हालांकि यह कुछ सेकंड के लिए नीचे दिया गया संदेश दिखाता है और फिर कंसोल विंडो बस क्रैश हो जाती है। संदेश: "मिले निम्नलिखित समारोह: WebJob1.Program.ManualTrigger निष्पादित: 'Program.ManualTrigger' क्योंकि यह था समारोह प्रोग्राम के रूप में मेजबान API के द्वारा कहा जाता है WAAS।" –