export enum FileAccessType
{
Public = 'Public',
Team = 'Team',
Private = 'Private',
}
export class FileSystemFile implements IFile
{
public id: number;
public fileName: string;
public filePath: string;
public contentType: string;
public contentLength: number;
// @References("typeof(MyApp.ServiceModel.FileSystemItem)")
public fileSystemItemId: number;
public constructor(init?: Partial<FileSystemFile>) { (Object as any).assign(this, init); }
}
export class FileSystemItem implements IFileItem
{
public id: number;
public fileAccessType?: FileAccessType;
public file: FileSystemFile;
public appUserId: string;
public constructor(init?: Partial<FileSystemItem>) { (Object as any).assign(this, init); }
}
export class CreateFileSystemItem implements ICreateDb<FileSystemItem>, IFileItem
{
public fileAccessType?: FileAccessType;
public file: FileSystemFile;
public constructor(init?: Partial<CreateFileSystemItem>) { (Object as any).assign(this, init); }
}
TypeScript CreateFileSystemItem DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /csv/reply/CreateFileSystemItem HTTP/1.1
Host: blazor-gallery.servicestack.net
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"fileAccessType":"Public","file":{"id":0,"fileName":"String","filePath":"String","contentType":"String","contentLength":0,"fileSystemItemId":0}}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"id":0,"fileAccessType":"Public","file":{"id":0,"fileName":"String","filePath":"String","contentType":"String","contentLength":0,"fileSystemItemId":0},"appUserId":"String"}