2010-04-28 15 views
6

में डुप्लिकेट विधि 'ProcessRequest' मैं एफ # में एएसपी.नेट एमवीसी दृश्य (वेबफॉर्म व्यू इंजन) कोड करने की कोशिश कर रहा हूं। मैं पहले ही नियमित एएसपी.नेट वेबफॉर्म एएसपीएक्स लिख सकता हूं और यह ठीक काम करता है, उदा।एएसपीएक्स

<%@ Page Language="F#" %> 
<% 
for i in 1..2 do %> 
<%=sprintf "%d" i %> 

तो मुझे लगता है कि मेरे पास मेरे web.config में सबकुछ ठीक से स्थापित है।

हालांकि, जब मैं ViewPage से पेज इनहेरिट करते हैं:

Compiler Error Message: FS0442: Duplicate method. The abstract method 'ProcessRequest' has the same name and signature as an abstract method in an inherited type.

समस्या एफ # CodeDom प्रदाता द्वारा तैयार किए गए कोड के इस टुकड़े हो रहा है:

<%@ Page Language="F#" Inherits="System.Web.Mvc.ViewPage" %> 

मैं इस त्रुटि मिलती है:

[<System.Diagnostics.DebuggerNonUserCodeAttribute>] 
abstract ProcessRequest : System.Web.HttpContext -> unit 
[<System.Diagnostics.DebuggerNonUserCodeAttribute>] 
default this.ProcessRequest (context:System.Web.HttpContext) = 
    let mutable context = context 
    base.ProcessRequest(context) |> ignore 

जब मैं इसके बजाय सी # का उपयोग करने के लिए पृष्ठ निर्देश बदलता हूं, जेनरेट कोड है:

[System.Diagnostics.DebuggerNonUserCodeAttribute()] 
public new virtual void ProcessRequest(System.Web.HttpContext context) { 
    base.ProcessRequest(context); 
} 

जो निश्चित रूप से ठीक काम करता है और AFAIK जेनरेट किए गए F # कोड के रूप में समान रूप से समान नहीं है।

मैं नेट 4.0.30319.1 (RTM) और MVC 2 आरटीएम

उत्तर

1

दुर्भाग्य से उपयोग कर रहा हूँ, मैं किसी भी तरह से एफ # में एक new virtual सदस्य घोषित करने के लिए वहाँ है अगर यकीन नहीं है। Spec के माध्यम से एक त्वरित रूप से कुछ भी वादा नहीं किया ...

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