<rewrite> не является действительным потомком <system.web>? - PullRequest
1 голос
/ 05 октября 2010

Надеюсь, я просто пропускаю что-то невероятно простое, если да, то извиняюсь ....

У меня есть приложение ASP.NET в .NET4, и мы пытаемся использовать перезапись URL с использованием

<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule....>

По некоторым причинам intellisense возвращает ошибку, которая говорит, что <rewrite> не является допустимым дочерним элементом <system.webserver>

Когда я собираю его и запускаю, он говорит что-то похожее на «Ошибкав строке 0 в web.config "

Если я удаляю все строки <rewrite>, это работает правильно (но, конечно, нет перезаписи)

Есть ли переключатель, который мне нужно щелкнуть или что-то?Это должно быть что-то, что я тупо упускаю из виду ...

Спасибо

РЕДАКТИРОВАТЬ: Оказалось, IIS был разграблен.Проголосуйте, чтобы закрыть.

Ответы [ 4 ]

1 голос
/ 06 октября 2010
1 голос
/ 05 октября 2010

Вы убедились, что ориентируетесь на Framework 4.0?

<compilation targetFramework="4.0"/>
0 голосов
/ 09 октября 2016

Обновите DotNetConfig в C: \ Program Files (x86) \ Microsoft Visual Studio 11.0 \ Xml \ Schemas \ 1033, если вы используете VS2012 и выше.

Откройте DotnetConfig в notepad ++, найдите ключевое слово System.webServer.

Вставьте следующий XML в тег System.webServer. Я добавил скриншоты, где обновить этот элемент xml и сохранить этот файл. (Помните: добавьте это в закрытый тег элемента после кэширования)

Примечание: если это сработает (надеюсь, что так), пожалуйста, проголосуйте за других людей.

Screenshot

<!-- language: lang-xml -->
    <xs:element name="rewrite" vs:help="configuration/system.webServer/rewrite">
        <xs:complexType>
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="globalRules" vs:help="configuration/system.webServer/rewrite/globalRules">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="rule" vs:help="configuration/system.webServer/rewrite/globalRules/rule">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="match" vs:help="configuration/system.webServer/rewrite/globalRules/rule/match">
                                            <xs:complexType>
                                                <xs:attribute name="url" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/match/url">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="negate" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/match/negate" />
                                                <xs:attribute name="ignoreCase" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/match/ignoreCase" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="conditions" vs:help="configuration/system.webServer/rewrite/globalRules/rule/conditions">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="add" vs:help="configuration/system.webServer/rewrite/globalRules/rule/conditions/add">
                                                        <xs:complexType>
                                                            <xs:attribute name="input" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/conditions/add/input" />
                                                            <xs:attribute name="matchType" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/conditions/add/matchType">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:NMTOKEN">
                                                                        <xs:enumeration value="Pattern" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                            <xs:attribute name="negate" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/conditions/add/negate" />
                                                            <xs:attribute name="pattern" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/conditions/add/pattern" />
                                                            <xs:attribute name="ignoreCase" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/conditions/add/ignoreCase" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="logicalGrouping" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/conditions/logicalGrouping">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="MatchAll" />
                                                            <xs:enumeration value="MatchAny" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="action" vs:help="configuration/system.webServer/rewrite/globalRules/rule/action">
                                            <xs:complexType>
                                                <xs:attribute name="type" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/action/type">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="None" />
                                                            <xs:enumeration value="Rewrite" />
                                                            <xs:enumeration value="Redirect" />
                                                            <xs:enumeration value="CustomResponse" />
                                                            <xs:enumeration value="AbortRequest" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="url" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/action/url" />
                                                <xs:attribute name="appendQueryString" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/action/appendQueryString" />
                                                <xs:attribute name="redirectType" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/action/redirectType">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="Permanent" />
                                                            <xs:enumeration value="Found" />
                                                            <xs:enumeration value="SeeOther" />
                                                            <xs:enumeration value="Temporary" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="statusCode" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/action/statusCode" />
                                                <xs:attribute name="subStatusCode" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/action/subStatusCode" />
                                                <xs:attribute name="statusReason" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/action/statusReason" />
                                                <xs:attribute name="statusDescription" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/action/statusDescription" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="name" type="xs:string" use="required" vs:help="configuration/system.webServer/rewrite/globalRules/rule/name" />
                                    <xs:attribute name="enabled" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/enabled" />
                                    <xs:attribute name="patternSyntax" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/patternSyntax">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="ECMAScript" />
                                                <xs:enumeration value="Wildcard" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="stopProcessing" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/globalRules/rule/stopProcessing" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.webServer/rewrite/globalRules/rule">
                              <xs:complexType>
                                <xs:attribute name="name" type="xs:string" use="required" vs:help="configuration/system.webServer/rewrite/globalRules/rule/name" />
                              </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.webServer/rewrite/globalRules/rule" />
                        </xs:choice>
                    </xs:complexType>
                </xs:element>
                <xs:element name="rules" vs:help="configuration/system.webServer/rewrite/rules">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="rule" vs:help="configuration/system.webServer/rewrite/rules/rule">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="match" vs:help="configuration/system.webServer/rewrite/rules/rule/match">
                                            <xs:complexType>
                                                <xs:attribute name="url" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/match/url">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:string">
                                                            <xs:minLength value="1" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="negate" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/match/negate" />
                                                <xs:attribute name="ignoreCase" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/match/ignoreCase" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="conditions" vs:help="configuration/system.webServer/rewrite/rules/rule/conditions">
                                            <xs:complexType>
                                                <xs:choice minOccurs="0" maxOccurs="unbounded">
                                                    <xs:element name="add" vs:help="configuration/system.webServer/rewrite/rules/rule/conditions/add">
                                                        <xs:complexType>
                                                            <xs:attribute name="input" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/conditions/add/input" />
                                                            <xs:attribute name="matchType" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/conditions/add/matchType">
                                                                <xs:simpleType>
                                                                    <xs:restriction base="xs:NMTOKEN">
                                                                        <xs:enumeration value="Pattern" />
                                                                        <xs:enumeration value="IsFile" />
                                                                        <xs:enumeration value="IsDirectory" />
                                                                    </xs:restriction>
                                                                </xs:simpleType>
                                                            </xs:attribute>
                                                            <xs:attribute name="negate" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/conditions/add/negate" />
                                                            <xs:attribute name="pattern" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/conditions/add/pattern" />
                                                            <xs:attribute name="ignoreCase" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/conditions/add/ignoreCase" />
                                                        </xs:complexType>
                                                    </xs:element>
                                                </xs:choice>
                                                <xs:attribute name="logicalGrouping" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/conditions/logicalGrouping">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="MatchAll" />
                                                            <xs:enumeration value="MatchAny" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="action" vs:help="configuration/system.webServer/rewrite/rules/rule/action">
                                            <xs:complexType>
                                                <xs:attribute name="type" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/action/type">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="None" />
                                                            <xs:enumeration value="Rewrite" />
                                                            <xs:enumeration value="Redirect" />
                                                            <xs:enumeration value="CustomResponse" />
                                                            <xs:enumeration value="AbortRequest" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="url" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/action/url" />
                                                <xs:attribute name="appendQueryString" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/action/appendQueryString" />
                                                <xs:attribute name="redirectType" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/action/redirectType">
                                                    <xs:simpleType>
                                                        <xs:restriction base="xs:NMTOKEN">
                                                            <xs:enumeration value="Permanent" />
                                                            <xs:enumeration value="Found" />
                                                            <xs:enumeration value="SeeOther" />
                                                            <xs:enumeration value="Temporary" />
                                                        </xs:restriction>
                                                    </xs:simpleType>
                                                </xs:attribute>
                                                <xs:attribute name="statusCode" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/action/statusCode" />
                                                <xs:attribute name="subStatusCode" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/action/subStatusCode" />
                                                <xs:attribute name="statusReason" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/action/statusReason" />
                                                <xs:attribute name="statusDescription" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/action/statusDescription" />
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="name" type="xs:string" use="required" vs:help="configuration/system.webServer/rewrite/rules/rule/name" />
                                    <xs:attribute name="enabled" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/enabled" />
                                    <xs:attribute name="patternSyntax" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/patternSyntax">
                                        <xs:simpleType>
                                            <xs:restriction base="xs:NMTOKEN">
                                                <xs:enumeration value="ECMAScript" />
                                                <xs:enumeration value="Wildcard" />
                                            </xs:restriction>
                                        </xs:simpleType>
                                    </xs:attribute>
                                    <xs:attribute name="stopProcessing" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/rules/rule/stopProcessing" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.webServer/rewrite/rules/rule">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required" vs:help="configuration/system.webServer/rewrite/rules/rule/name" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.webServer/rewrite/rules/rule" />
                        </xs:choice>
                    </xs:complexType>
                </xs:element>
                <xs:element name="rewriteMaps" vs:help="configuration/system.webServer/rewrite/rewriteMaps">
                    <xs:complexType>
                        <xs:choice minOccurs="0" maxOccurs="unbounded">
                            <xs:element name="rewriteMap" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap">
                                <xs:complexType>
                                    <xs:choice minOccurs="0" maxOccurs="unbounded">
                                        <xs:element name="add" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap/add">
                                            <xs:complexType>
                                                <xs:attribute name="key" type="xs:string" use="required" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap/add/key" />
                                                <xs:attribute name="value" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap/add/value" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="remove" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap/add">
                                            <xs:complexType>
                                                <xs:attribute name="key" type="xs:string" use="required" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap/add/key" />
                                            </xs:complexType>
                                        </xs:element>
                                        <xs:element name="clear" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap/add">
                                            <xs:complexType>
                                                <!--tag is empty-->
                                            </xs:complexType>
                                        </xs:element>
                                    </xs:choice>
                                    <xs:attribute name="name" type="xs:string" use="required" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap/name" />
                                    <xs:attribute name="defaultValue" type="xs:string" use="optional" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap/defaultValue" />
                                    <xs:attribute name="ignoreCase" type="small_boolean_Type" use="optional" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap/ignoreCase" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="remove" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap">
                                <xs:complexType>
                                    <xs:attribute name="name" type="xs:string" use="required" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap/name" />
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="clear" vs:help="configuration/system.webServer/rewrite/rewriteMaps/rewriteMap" />
                        </xs:choice>
                    </xs:complexType>
                </xs:element>
            </xs:choice>
        </xs:complexType>
    </xs:element>
0 голосов
/ 06 октября 2010

У вас на IIS установлен модуль перезаписи URL?

...