Sto cercando di creare un serializzatore generica withing un progetto vNext e quando chiamo il costruttore per StreamWriter getta questo errore di compilazionevNext Argomento 1: non può convertire da 'stringa' a 'System.IO.Stream'
errore CS1503 Argomento 1: non può convertire da 'stringa' per 'System.IO.Stream' Test.ASP.NET Nucleo 5,0 Helper.cs 14
anche se c'è un costruttore che permette di specificare un percorso per un file come argomento.
questo è il mio file di classe
using System;
using System.Collections.Generic;
using System.Xml;
using System.Xml.Serialization;
using System.IO;
namespace Test
{
public static class Helper
{
public static void SerializeToXml<T>(string path, T value)
{
var serializer = new XmlSerializer(typeof(T));
using (var stream = new StreamWriter(path)) // ERROR OCCURS HERE
{
using (var writer = XmlWriter.Create(stream))
{
serializer.Serialize(writer, value);
}
}
}
}
}
Questo è il mio file project.json
{
"version": "1.0.0-*",
"dependencies": {
},
"commands": {
"run": "run"
},
"frameworks": {
"aspnet50": {
"dependencies": {
},
"frameworkAssemblies": {
"System.Xml": "4.0.0.0"
}
},
"aspnetcore50": {
"dependencies": {
"System.Console": "4.0.0-beta-22231",
"System.Xml.XmlSerializer": "4.0.0-beta-22231",
"System.Collections": "4.0.10-beta-22422",
"System.Xml.ReaderWriter": "4.0.10-beta-22231",
"System.IO": "4.0.10-beta-22231"
}
}
}
}
funziona con il codice non-Beta? –
Il 'nuovo streamWriter (path, encoding)' overload [è supportato dalle librerie di classi portatili] (http://msdn.microsoft.com/en-us/library/system.io.streamwriter%28v=vs.110% 29.aspx) mentre la versione con solo il percorso non lo è. Puoi usare quello? – dbc
@SteveWellens Se eseguo lo stesso codice con un normale progetto di console (non vnext) funzionerà. Non sono sicuro che sia questo ciò che intendevi. Grazie per il tuo commento. – Azran