Чтобы упростить инструкцию по проблеме, я пытаюсь выполнить поиск и посмотреть, присутствует ли какой-либо элемент в моем файле. Мой XML-файл - это файл AndroidManifest.xml, используемый в приложениях Android. В частности, я ищу элемент типа «uses-permission» с именем элемента «android: name» и значением «android.permission.INTERNET». Достаточно просто, не так ли?LINQ to XML: Поиск элемента с определенным атрибутом
Этот запрос,
IEnumerable<XElement> address =
from el in _rootElement.Elements("uses-permission")
where (string)el.Attribute("android:name") == "android.permission.INTERNET"
select el;
Вопрос заключается в том, что пространство имен, как и в «андроид: имя» не может быть использован в запросе. Итак, как мне сделать этот запрос? Я видел некоторые жалобы и предложения в другом месте, но не могу включить их в свой конкретный запрос.
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.app.myapp">
<uses-permission android:name="android.permission.INTERNET"/>
<application android:allowBackup="true" android:icon="@drawable/app_icon" android:label="App">
<activity android:configChanges="fontScale|keyboard|keyboardHidden" android:name="com.unity3d.player.UnityPlayerProxyActivity" android:screenOrientation="landscape">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
Возможный дубликат [Gett значение атрибута в пространстве имен] (http://stackoverflow.com/questions/15096621/getting-value-of-an-attribute-within-namespace) –