Итак, вот моя проблема, и я уверен, что это что-то очень простое. Я относительно новичок в веб-разработке, и у меня возникла небольшая проблема, которую я просто не могу понять.
У меня есть этот код в представлении MVC. . .
@{
var data = "";
var count = 1;
foreach (var item in ViewModel.Data)
{
data += count.ToString() + "," + item.Reading.ToString() + "\n";
count++;
}
}
Я хочу передать эту переменную «данные» очень маленькому скрипту, чтобы создать график с помощью Dygraph. Это то, что у меня сейчас есть, и я считаю, что это должно работать, но это не так.
<script type="text/javascript">
g = new Dygraph(document.getElementById("readingGraph"), @data,{ labels: ["Sample Number", "Reading"] });
</script>
Я знаю, что сам скрипт будет работать. Если я жестко закодирую некоторые значения CSV в строку, где @data, появится график, и все в порядке. При наличии @data график не загружается, и скрипт вообще не запускается (я поместил туда предупреждение («привет»), чтобы увидеть, появится ли оно, но этого не произошло).
Кроме того, я знаю, что строка «строится» правильно, потому что я установил точки останова в Visual Studio и проверил.
Любая помощь вообще была бы отличной, ребята. Заранее спасибо.
var data = "@data";
. Кроме того, я думаю, что новые строки могут быть чем-то, что вызывает у вас проблемы. Я не знаком с Dygraph. Может быть, формат данных, которые вы передаете, является частью проблемы? Согласно документам, этот второй параметр должен быть файлом, поэтому я думаю, что то, что вы пытаетесь сделать, не сработает. - person Tim Hobbs   schedule 18.07.2014\n
. Единственное отличие, которое я вижу, это то, что значения переменных@data
не заключены в кавычки, т.е.data += count.ToString() + "," ...
->data += "\"" + count.ToString() + ","...
(или еще лучше,string.Format(...)
:) ) - person Fred   schedule 18.07.2014