2010-02-10 5 views
15

मैंने मॉडरेटर चुनाव के परिणामों के बारे में सबसे हालिया एसओ ब्लॉग पोस्ट देखने के बाद ओपनएसटीवी डाउनलोड किया। जेफ ने लिखा था कि उन्होंने चुनाव आयोजित करने के लिए ओपनएसटीवी का इस्तेमाल किया था, और साथ ही मतदान डेटा वाले एक मतपत्र फ़ाइल (.blt) की आपूर्ति की थी।मैं सी # का उपयोग कर ओपनएसटीवी चुनावों के लिए बीएलटी फाइल कैसे उत्पन्न करूं?

मेरा प्रश्न है: आप सी # में बीएलटी फ़ाइल कैसे बनाते हैं?

दो तरीके जिनसे मैं के बारे में सोच सकते हैं मतदान पेज यह किया है कि:

  • मतदान पेज एक SQL डेटाबेस में प्रत्येक वोट जोड़ा, और फिर किसी भी तरह, इन वोट एक .BLT फ़ाइल में निर्यात किया गया मतदान समाप्त होने के बाद। कैसे यद्यपि? मैं यह कैसे कर सकता हूँ?
  • या, मतदान पृष्ठ ने फ़ाइल बनाई और फिर प्रत्येक बार मतदान करने पर इसे जोड़ा। मुझे यकीन है कि यह नहीं है कि मतदान पृष्ठ कैसे काम करता है, क्योंकि यह पूरी तरह से असंभव है, लेकिन मैं इसे सी # में कैसे कर सकता हूं?

मुझे यह जानने में दिलचस्पी है कि दोनों संभावनाएं कैसे काम करती हैं और मैं इसे सी # में कैसे कर सकता हूं। अग्रिम में धन्यवाद। ओह, और मुझे आशा है कि जेफ इस सवाल को देखता है, क्योंकि वह शायद एक महान जवाब होगा ...

उत्तर

21

बीएलटी फ़ाइल स्वरूप का सबसे अच्छा विवरण यहाँ है:

 
    4 2   # four candidates are competing for two seats 
    -2   # Bob has withdrawn (optional) 
    1 4 1 3 2 0 # first ballot 
    1 2 4 1 3 0 
    1 1 4 2 3 0 # The first number is the ballot weight (>= 1). 
    1 1 2 4 3 0 # The last 0 is an end of ballot marker. 
    1 1 4 3 0 # Numbers in between correspond to the candidates 
    1 3 2 4 1 0 # on the ballot. 
    1 3 4 1 2 0 
    1 3 4 1 2 0 # Chuck, Diane, Amy, Bob 
    1 4 3 2 0 
    1 2 3 4 1 0 # last ballot 
    0   # end of ballots marker 
    "Amy"  # candidate 1 
    "Bob"  # candidate 2 
    "Chuck"  # candidate 3 
    "Diane"  # candidate 4 
    "Gardening Club Election" # title 

सभी मैंने किया

था
  1. मतदान एक पाठ फ़ाइल में यह परिणाम है
  2. परिणाम कॉपी-पेस्ट किया पाने के लिए
  3. लिखा एक छोटे से 50 लिन (उत्पादन टैब-सीमांकित डिफ़ॉल्ट रूप से है) एसक्यूएल प्रबंधन स्टूडियो में एक तदर्थ क्वेरी प्रदर्शन करना क्वेरी से बीएलटी प्रारूप में कनवर्ट करने के लिए ई सी # ऐप
+0

जेफ, जब ओपनएसटीवी अधिक प्रतिबंधक स्वामित्व लाइसेंस में परिवर्तित हो गया, तो उन्होंने मूल रूप से सभी कोड और विकी प्रविष्टियों को हटा दिया (ओपनएसटीवी के जीपीएल संस्करण को स्रोत कोड जिसे हम वितरित करते हैं अब उपलब्ध नहीं है)। मैंने लिंक को हटा दिया (शुक्रिया) आपने इसे सारांशित किया। उस फ़ाइल का प्रारूप ढूंढना बेहद मुश्किल है। –

+0

मुझे लगता है कि हमें किसी दिए गए लाइन के "प्रारूप" को सरल बनाने के लिए आने वाले लोगों के लाभ के लिए चैट में चर्चा की गई चीज़ों को दोहराना चाहिए: '(टिप्पणी यहां जाती है) डब्ल्यू वीवी ... v 0' जहां' डब्ल्यू 'है मतपत्र वजन और 'vv ... v' व्यक्तिगत वोट हैं, 1. एन वोट से। – jcolebrand

+3

मैं मतपत्र वजन पर थोड़ा उलझन में हूं। यदि हम एसओ चुनाव को एक उदाहरण के रूप में लेते हैं, तो किस परिस्थिति में मतपत्र वजन प्रत्येक मतपत्र के लिए समान नहीं होगा? –

संबंधित मुद्दे