use*_*799 4 storage caching ios
我有一个UIViewController供用户输入他们的数据并提交给我们的ASP.NET Webapi.大约有40个textField和其他控件.
有什么办法可以在本地保存输入.在用户单击"提交"按钮之前,数据将不会被清除.我希望数据仍在那里,甚至重启手机或重启程序.保存在XML中?
您可以选择多种选项,其复杂程度如下:
使用NSKeyedArchiver保存到本地文件系统.这涉及使您的模型类符合NSCoding协议.
使用sqlite和本地数据库.C api可能非常冗长,但有一个很好的Objective-C包装器称为FMDB.
使用CoreData.这涉及创建本地数据模型(对象模式),然后指示CoreData将对象持久化到其存储.存储通常是一个sqlite数据库(包括ACID合规性 - 例如事务,原子性等),但CoreData也知道如何进行二进制和XML格式.
无论您使用哪种方法,我建议使用数据访问对象(DAO)设计模式,该模式为持久性方法提供协议.例子:
- (Customer*) findCustomByLastName:(NSString*)lastName
- (void) save:(Customer*)customer
Run Code Online (Sandbox Code Playgroud)
..以这种方式,它可以从一种非常简单的持久性风格开始,测试你的整体架构如何集成到一个有凝聚力的应用程序,然后交换另一个更健壮的风格.这是使用NSKeyedArchiver的文件系统DAO的示例.
其他方法:
| 归档时间: |
|
| 查看次数: |
4795 次 |
| 最近记录: |