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);
        }
Ejemplo n.º 2
0
        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;
        }