Aktualnie mam Cortan zaimplementowaną w mojej aplikacji Silverlight. Polecenia głosowe są zapisywane w CortanaCommands.xml, oto kod:Jak zmodyfikować polecenia Cortana Voice Activation (XML) w języku C#?
<?xml version="1.0" encoding="utf-8"?>
<VoiceCommands xmlns="http://schemas.microsoft.com/voicecommands/1.1">
<CommandSet xml:lang="en-US">
<CommandPrefix>Dr. Bailey</CommandPrefix>
<Example> Open app to take dictation </Example>
<Command Name="Text">
<Example> Is it going to rain? </Example>
<ListenFor> [create] {dictation} </ListenFor>
<Feedback> "" </Feedback>
<Navigate Target="/Views/CortanaText.xaml" />
</Command>
<PhraseTopic Label="dictation" Scenario="Dictation">
<Subject> Cal 123 </Subject>
</PhraseTopic>
</CommandSet>
</VoiceCommands>"
W tym przykładzie, jeśli użytkownik instaluje Cortana i mówi, wówczas aplikacja nawiguje „Dr Bailey, to będzie padać?” do CortanaText.xaml. Jest to zakodowane na stałe w XML i chcę, aby użytkownik mógł dostosować swój Prefiks Komend i ich Komendę.
Korzystając z 2 pól tekstowych, zakodowałem w C# łańcuch, który zawiera cały kod XML, ale wstawiając wybory z pól tekstowych zawierających nowy przedrostek polecenia i polecenie. Ten ciąg nazywa się cortanaXMLstring. Jaki jest najlepszy sposób nadpisania istniejącego kodu w CortanaCommands.xml nowym ciągiem? Pomyślałem, że będzie to łatwiejsze niż modyfikowanie 2 różnych obszarów istniejącego XML. Pomyślałem także, że może być możliwe usunięcie CortanaCommands.xml (przy użyciu kodu C#), a następnie utworzenie tego XML po raz kolejny, po prostu wstawiając ciąg, ponieważ ciąg zawiera cały tekst potrzebny do XML? Czy są jakieś inne sugestie, jak zmodyfikować te 2 pola w XML? Jest to przedrostek polecenia i przykład polecenia. Dziękuję za pomoc, którą można udzielić!