我首先使用实体框架代码。
这里我有一个模型:
public class Stop
{
[Key]
public int StopID { get; set; }
public string StopCode { get; set; }
public string StopText { get; set; }
public string Street { get; set; }
}
是否可以让键不是 int 但内存消耗更少?字节?整数16?
是否可以减少字符串的内存消耗?字符串[20]?
我遇到的问题是我使用 WCF 服务来传输数据并且超出了合理的大小。
谢谢
更新
以下是传输的典型数据的屏幕截图:
可以肯定的一件事:我有 2116 项与屏幕截图类似的转移。让我们尝试计算传输数据的大小。我每个项目的字符少于 20 个。我有 2116 个项目,所以 20 * 2116 = 42320 >> 远远少于我的 web.config (maxBufferPoolSize) 中配置的 600000!
这是我的配置:
<binding name="WSHttpBinding_IRequestService" closeTimeout="00:01:00"
openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard"
maxBufferPoolSize="600000" maxReceivedMessageSize="600000" messageEncoding="Text"
textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<reliableSession ordered="true" inactivityTimeout="00:10:00"
enabled="false" />
<security mode="Message">
<transport clientCredentialType="Windows" proxyCredentialType="None"
realm="" />
<message clientCredentialType="Windows" negotiateServiceCredential="true"
algorithmSuite="Default" />
</security>
</binding>
任何想法?