当前位置: 首页>>代码示例>>C#>>正文


C# Storage.GetItem方法代码示例

本文整理汇总了C#中Storage.GetItem方法的典型用法代码示例。如果您正苦于以下问题:C# Storage.GetItem方法的具体用法?C# Storage.GetItem怎么用?C# Storage.GetItem使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Storage的用法示例。


在下文中一共展示了Storage.GetItem方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: ProjectArtifact_Unittest

        public void ProjectArtifact_Unittest() {
            var storage = new Storage(ArtifactDir + "/test_project");
            var tempDir = storage.GetItem("/temp",StorageTypes.Directory,true) as IStorageDirectory;
            var projLocation = storage.GetItem("/web", StorageTypes.Directory, true) as IStorageDirectory;
            var modelDir = projLocation.GetItem("models",StorageTypes.Directory,true) as IStorageDirectory;
            var modelCode = @"
public class AuthModel{
    public string Username{get;set;}
    public string Password{get;set;}
}
";
            modelDir.PutText("AuthModel.cs",modelCode);

            var controllerDir = projLocation.GetItem("controllers",StorageTypes.Directory,true) as IStorageDirectory;
            var controllerCode = @"
public class AuthController{
    public object Signin(string username,string password){
        return new AuthModel(){Username = username , Password = password};
    }
}
";
            controllerDir.PutText("AuthController.cs",controllerCode);

            var jsDir = projLocation.GetDirectory("js",true);
            var jsCode = @"
alert('11');
";
            jsDir.PutText("alert.js",jsCode);

            var artifact = new ProjectArtifact(null,projLocation, tempDir, null);
            var assembly = artifact.Assembly;
            var types = assembly.DefinedTypes;
            Assert.Equal(2, types.Count());
            var rs = artifact.GetResourceText("/js/alert.js");
            Assert.Equal(jsCode,rs);

            //测试源代码改变后是否重新编译
            var addictionCode = @"public class AuthModel{
    public string Username{get;set;}
    public string Password{get;set;}
    public int Gender{get;set;}
}";
            modelDir.PutText("AuthModel.cs",addictionCode);
            Task.Run(async ()=> {
                await Task.Delay(1000);
                var newAssembly = artifact.Assembly;
                types = newAssembly.DefinedTypes;
                Assert.Equal(2, types.Count());
                var modelType = types.First(p => p.Name.Contains("Model"));
                var genderMember  = modelType.GetMembers().FirstOrDefault(p=>p.Name=="Gender");
                Assert.NotNull(genderMember);
            }).Wait();
            
        }
开发者ID:yanyitec,项目名称:Yanyitec,代码行数:54,代码来源:Artifact_Unittest.cs


注:本文中的Storage.GetItem方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。