public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) { var project = (ProjectSnapshot)value; var documents = new List <DocumentSnapshotHandle>(); foreach (var documentFilePath in project.DocumentFilePaths) { var document = project.GetDocument(documentFilePath); var documentHandle = new DocumentSnapshotHandle(document.FilePath, document.TargetPath, document.FileKind); documents.Add(documentHandle); } var handle = new FullProjectSnapshotHandle(project.FilePath, project.Configuration, project.RootNamespace, project.ProjectWorkspaceState, documents); FullProjectSnapshotHandleJsonConverter.Instance.WriteJson(writer, handle, serializer); }
public ProjectRazorJson(string serializedFilePath, ProjectSnapshot project) { SerializedFilePath = serializedFilePath; FilePath = project.FilePath; Configuration = project.Configuration; RootNamespace = project.RootNamespace; ProjectWorkspaceState = project.ProjectWorkspaceState; var documents = new List <DocumentSnapshotHandle>(); foreach (var documentFilePath in project.DocumentFilePaths) { var document = project.GetDocument(documentFilePath); var documentHandle = new DocumentSnapshotHandle(document.FilePath, document.TargetPath, document.FileKind); documents.Add(documentHandle); } Documents = documents; }